比如说, 我现在要设计一个类,从文本中得到信息。
但是我取到的信息在之后的程序中可能经常要用到,于是我就用一个全局变量去保存他,
但是这与面象对象的设计方法是有出入的(全局变量破坏封装)哪位高人指点一二?

解决方案 »

  1.   

    Type
     TTextClass = Class;
     private
       Text: String; //文本信息
     public
       procedure SetText(Val: String);
       Function GetText(Val: String);
     end;
     
     TForm1 = class(TForm);
     private
     public
       Text: TTextClass;
     end;
    这样通过Text的GetText和SetText来访问文本信息了.
      

  2.   

    上面的GetText方法写错了,sorry
    Function GetText: String;
      

  3.   

    Type
     TClass1 = Class;
     private
       procedure SetText(Val: String);
       Function GetText: String;
     public
       Text: String read GetText write SetText; //文本信息   
     end;
     
     TForm1 = class(TForm);
     private
     public
       Data: TClass1;
     end; 然后在具体需要的地方:
       Data.Text := '你定义的数据'  可以实现;这样通过Text的GetText和SetText来访问文本信息了.
      

  4.   

    不是生硬的套上了面向对象的外衣就是面向对象设计,面向对象要带来开发、维护效率的大幅度提升,而非只是用到class的形式。C也能用OO的思想写程序,而用Delphi写的不一定是OO的程序。