帮忙看一下类的问题
unit比如说:
unit1
type
Taa=class(TForm)
protected
public
ss:string;
..........
--------------------
unit2
uses unit1
type
Tbb=class(Taa)
protected
public
procedure showss;
end;
var
bb:Tbb;
implementation
{$R *.dfm}
procedure Tbb.showss;
begin
showmessage(bb.ss);//在这儿错了
end;
..............
-----------------------
要这样写bb才能使用ss呢?
问题点数:60、回复次数:5Top
1 楼zsy_good(只要坚定不移的走下去,那一定会成功)回复于 2002-10-17 14:26:23 得分 30
unit Unit1;
interface
uses
Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
StdCtrls;
type
TForm1 = class(TForm)
Button1: TButton;
procedure Button1Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
Taa = class
public
ss: string;
end;
Tbb = class( Taa)
public
procedure aaa;
end;
var
Form1: TForm1;
implementation
{$R *.DFM}
procedure TForm1.Button1Click(Sender: TObject);
var
a: Taa;
b: Tbb;
begin
b := Tbb.Create;
b.ss := 'test';
b.aaa;
end;
{ Tbb }
procedure Tbb.aaa;
begin
showmessage(ss);
end;
end.Top
2 楼hety(King Of Java)回复于 2002-10-17 14:28:50 得分 0
应该没错的吧,你贴全点Top
3 楼windofsun(太阳风)回复于 2002-10-17 14:36:16 得分 30
procedure Tbb.showss;
begin
showmessage(Self.ss);// 改成这样
// bb对象有可能在调用这个方法时还没有创建。而Self则一定是创建对象以后才会调用的
end;
Top
4 楼windofsun(太阳风)回复于 2002-10-17 14:39:04 得分 0
其实上面的ss可以省略,因为ss就是类Tbb的一个字段,而showss是类Tbb的一个方法,是同一个类的Top
5 楼zzg40280614(northsky)回复于 2002-10-17 14:39:25 得分 0
??????
不明白?Top




