一个类重载了运算符new
和delete
。其中new
为公共的,delete
为私有的。
当我构造这个类的实例时,我得到了下面的错误:
pFoo = new Foo(bar)
example.cpp(1): error C2248: 'Foo::operator delete': cannot access private member declared in class 'Foo'
这里没有调用 delete
,那么编译器到底在想什么呢? :)
- 出现错误的原因是什么?
- 可否不使用成员函数
CreateInstance
解决此问题?