对象创建问题:heapOnly,stackOnly代码(C++代码)
2010-12-03 12:26
260 查看
class HeapOnly
{
public:
HeapOnly()
{
cout<<"constructor. "<<endl;
}
void destroy()
{
delete this;
}
private:
~HeapOnly(){}
};
int main()
{
HeapOnly *p = new HeapOnly;
p->destroy();
HeapOnly h;
h.Output();
return 0;
}
#include <iostream>
using namespace std;
class StackOnly
{
public:
StackOnly()
{
cout<<"constructor." <<endl;
}
~StackOnly()
{
cout<<"destructor." <<endl;
}
private:
void *operator new (size_t);
};
int main()
{
StackOnly s; //okay
StackOnly *p = new StackOnly; //wrong
return 0;
}
{
public:
HeapOnly()
{
cout<<"constructor. "<<endl;
}
void destroy()
{
delete this;
}
private:
~HeapOnly(){}
};
int main()
{
HeapOnly *p = new HeapOnly;
p->destroy();
HeapOnly h;
h.Output();
return 0;
}
#include <iostream>
using namespace std;
class StackOnly
{
public:
StackOnly()
{
cout<<"constructor." <<endl;
}
~StackOnly()
{
cout<<"destructor." <<endl;
}
private:
void *operator new (size_t);
};
int main()
{
StackOnly s; //okay
StackOnly *p = new StackOnly; //wrong
return 0;
}
相关文章推荐
- 对象创建问题:heapOnly,stackOnly代码(C++代码)
- 【c++】【转】如何只在heap上创建对象,如何只在stack上建立对象?
- vs2012及以上版本中写c++时自动给代码添加创建信息注释的问题
- 如何只在heap上创建对象,如何只在stack上建立对象?
- 【怎样写代码】复杂对象的组装与创建 -- 建造者模式(一):问题案例
- QML与c++交互学习笔记(六) 关于qt c++中创建对象,QML获取此对象数据问题
- 如何只在heap上创建对象,如何只在stack上建立对象?
- QML与c++交互学习笔记(六) 关于qt c++中创建对象,QML获取此对象数据问题
- 使用代码创建的控件对象,设置的事件监听方法不执行的问题
- 如何只在heap上创建对象,如何只在stack上建立对象?
- C++创建线程问题 一段可用代码
- c++沉思录笔记(21章代码)通过函数对象解决c++的函数嵌套问题
- C++中有三种创建对象 内存分配问题
- c++临时对象创建的问题
- 如何只在heap上创建对象,如何只在stack上建立对象?
- 仿MFC实现c++按名动态创建对象之续(瘦身以及解决其在dll中使用的问题)
- c++中堆栈及创建对象示例代码
- 在线雇佣问题(onlineMaximumHireAssistant)-c++代码实现及运行实例结果
- C++创建对象的两种方法
- String a="123"创建对象个数问题