| using System; |
| using director_wstringNamespace; |
| |
| public class runme |
| { |
| static void Main() |
| { |
| runme r = new runme(); |
| r.run(); |
| } |
| |
| void run() |
| { |
| director_wstring_B b = new director_wstring_B("hello"); |
| |
| b.get(0); |
| if (b.get_first() != "hello world!") |
| throw new ApplicationException("Incorrect get_first:" + b.get_first()); |
| |
| b.call_process_func(); |
| if (b.smem != "hello") |
| throw new ApplicationException("Incorrect smem:" + b.smem); |
| |
| b.call_process_wstring_func(); |
| if (b.smem != "hello (wstring)") |
| throw new ApplicationException("Incorrect smem:" + b.smem); |
| |
| b.call_process_wstring_ref_func(); |
| if (b.smem != "hello (wstring ref)") |
| throw new ApplicationException("Incorrect smem:" + b.smem); |
| } |
| } |
| |
| class director_wstring_B : A |
| { |
| public String smem; |
| public director_wstring_B(String first) : base(first) |
| { |
| } |
| public override String get_first() |
| { |
| return base.get_first() + " world!"; |
| } |
| public override void process_text(String s) |
| { |
| this.smem = s; |
| } |
| public override void process_wstring_text(String s) |
| { |
| this.smem = s + " (wstring)"; |
| } |
| public override void process_wstring_ref_text(String s) |
| { |
| this.smem = s + " (wstring ref)"; |
| } |
| } |