如:A *a;
这时是不是不分配内存。
但A a;是不是已分配了内存?
这时是不是不分配内存。
但A a;是不是已分配了内存?
解决方案 »
- 程序在关闭的时候说内存错误,这个怎么检查?
- 请问如何对字符串进行排序呢
- 如何将 CTime类型的数据转换为 time_t类型呢?
- 有人研究过凤之焚的MimeFilter例子吗? 或者熟悉网页内容过滤技术的请进。(MimeFilter Bug修正&&问题求解)
- VC中鼠标经过按钮的时候(按钮已经加载位图),让位图改变?
- 做实验,在对话框的一个文本框里画线,怎么才可以清除掉线啊
- 深入浅出MFC真的想大家说的那样神奇 那样优秀吗???
- 我正在学习C++BUILDER,请问有什么好书
- 如何改变单选按钮控件在Group中既定的值?
- 紧急救援
- 请教!如何用非模式对话框实现面板?
- 怎样在Dialog类中访问Doc类中的变量?
A a;//a要初始化才能分配内存
而以A a方式创建对象时,同样是在堆栈里分配内存,但这时分配的大小是该类的大小,不同的类其大小是不同的.
A a;//a要初始化才能分配内存
这时不是已经调用构造函数初始化了么?
而对象就是对象对象可用两种方法创建,动态和静态,也就是动态内存分配和静态内存分配.
动态创建对象返回这个对象的指针,用指针来操作对象.指针的本质作用也在于此,用于动态内存的操作和管理A *pA
pA = new A //动态内存分配A a; //静态内存分配动态内存分配和静态内存分配有什么不同,可参见一些书,如:C++编程思想..
class A
{
public:
A(){a=0;b=0;c=0;cout<<"A's con\n";}
private:
int a;
int b;
int c;
};
void main()
{
A* p=NULL;
A* q=new A;
A t; cout<<sizeof(p)<<endl;
cout<<sizeof(q)<<endl;
cout<<sizeof(t)<<endl;
cout<<sizeof(*p)<<endl;
cout<<sizeof(*q)<<endl;
delete q;
}