delphi的对象名只是个指针吗???,刚开始接触,求教。。
最近用delphi,发现一个问题,不知道我说的对不,delphi的对象名只不过是个指针,还不是常指针,可以随便改。。。所以我有两个问题:
1.delphi的变量名是否只是个指针???
2.delphi的对象是不是不可能写在栈中,成为自动变量自动释放????
我一直想用一个引用变量来引用一个对象,发现不知道该怎么办,delphi貌似没有定义引用变量,经过多番尝试,居然可以定义一个任意类型的指针就能引用任何对象,比如一个tbutton型指针p,只需要执行,p:=tbutton(richedit1);然后就可以trichedit(p).来操作richedit1对象。。。。用一个按钮类型的指针去操作文本编辑对象这也太离奇了。。。。
所以我只能得出个猜测,delphi根本就没有C++意义中的对象名,他只有一个指向该对象内存的指针,就是类似于C++中用new给指针分配内存一样,这么搞可能也不能自动释放对象,只是把指针给释放了(这个我没研究过,至少C++中的new不可以),是不是在delphi里每次在子函数创建一个临时对象就必须在跳出函数自己释放????
C++里的对象在子函数里默认的可是自动变量,写在栈中,肯定会自动释放。。。