类对象指针的存储问题~~~~
(1)A* a;a->fun();
(2)A* a=new A();a->fun();
2种方式都可以。
请问第一种方式下指针a所指向的对象都存储在什么位置?是栈上吗?
A* a;编译系统会为他生成临时对象吗?
最好谁能说一下这两种方式编译系统式如何具体执行的。。。。。
谢谢!!!
[解决办法]
第一种方式只是个指针声明,之所以能执行是因为函数fun不是虚函数,采用的是静态绑定,实际上这时候a是没有值的。
[解决办法]
第一种方式,编译器不会为他生成临时对象。a是野指针,指向的位置未知。