菩 菩提葡萄 Unregistered / Unconfirmed GUEST, unregistred user! 2001-08-13 #2 如果要接受不同类型的参数,那就重载这个函数: function Test(I:integer) overload; function Test(S:String) overload; function Test(Double) overload; 那调用这个函数时就可以传integer,string和Double型的参数。
如果要接受不同类型的参数,那就重载这个函数: function Test(I:integer) overload; function Test(S:String) overload; function Test(Double) overload; 那调用这个函数时就可以传integer,string和Double型的参数。
S sashion Unregistered / Unconfirmed GUEST, unregistred user! 2001-08-13 #3 如果我要传递的参数是对象类型,在《数据结构(用c++描述)》一书中,使用模板,使数据 结构具有通用性,在delphi中没有模板,用什么样的方法才能实现这种功能呢?谢谢!
菩 菩提葡萄 Unregistered / Unconfirmed GUEST, unregistred user! 2001-08-13 #4 在DELPHI中你可以直接将对象或结构类型做为参数传递。 我手头有一本《数据结构实用教程(c++描述)》,但我没有找到你所说的模板, 能不能具体一点?
S sashion Unregistered / Unconfirmed GUEST, unregistred user! 2001-08-13 #5 我的这本书是清华的。举个例子吧,比如要写一个栈,这个栈要具有通用性,到具体要用的 时候,才确定栈元素的类型。这要如何实现?谢谢!
菩 菩提葡萄 Unregistered / Unconfirmed GUEST, unregistred user! 2001-08-13 #6 你的意思是不是这个栈不但可以压简单数据类型,还可以压对象类型, 且对象的具体类型不定?
千 千王之王 Unregistered / Unconfirmed GUEST, unregistred user! 2001-08-13 #8 用Variant吧。 我所用过的类似Template的东西只有使用Idispatch接口的variant变量了。 没办法,用Pascal就这样。
菩 菩提葡萄 Unregistered / Unconfirmed GUEST, unregistred user! 2001-08-13 #9 对,Variant可以是任何类型的数据或对象,就是占用空间大一点。
千 千王之王 Unregistered / Unconfirmed GUEST, unregistred user! 2001-08-13 #10 用Pointer?虚拟方法表怎么解决,这可不是类型强制转换的问题,否则你还得Invoke去。
S sashion Unregistered / Unconfirmed GUEST, unregistred user! 2001-08-13 #11 听说,可以用TObject统一起来,但我不知如何实现。 各位大虾,你们认为可行不可行?可行的话如何实现?
D djdsz Unregistered / Unconfirmed GUEST, unregistred user! 2001-08-13 #12 可以的,TOBJECT实际上就是一个POINTER, 要想操作实际类里的属性,可以用RTTI机制,查询操作对象的属性。 如果你确定使用哪些类的话,可以使用类型转换。实际上,你的问题就象TNOTIFYEVENT TNOTIFYEVENT=procedure(Sender:TOBJECT) of OBJECT; 这里,SENDER可以接收任何类。
可以的,TOBJECT实际上就是一个POINTER, 要想操作实际类里的属性,可以用RTTI机制,查询操作对象的属性。 如果你确定使用哪些类的话,可以使用类型转换。实际上,你的问题就象TNOTIFYEVENT TNOTIFYEVENT=procedure(Sender:TOBJECT) of OBJECT; 这里,SENDER可以接收任何类。
菩 菩提葡萄 Unregistered / Unconfirmed GUEST, unregistred user! 2001-08-13 #13 如djdsz所说,推荐你看《Delphi5开发人员指南(Delphi 5 Developer's Guide)》 或《Delphi高级编程指南》,都是Borland的推荐用书,在上面可以好好研究一下 DELPHI的面向对象机制和RTTI。
如djdsz所说,推荐你看《Delphi5开发人员指南(Delphi 5 Developer's Guide)》 或《Delphi高级编程指南》,都是Borland的推荐用书,在上面可以好好研究一下 DELPHI的面向对象机制和RTTI。
N nisky Unregistered / Unconfirmed GUEST, unregistred user! 2001-12-22 #17 如果要传递对象类型,为什么不使用metaclass?