Класс имеет перегруженные операторы new
и delete
. new
является общедоступным, delete
является закрытым.
При создании экземпляра этого класса я получаю следующую ошибку:
pFoo = new Foo(bar)
example.cpp(1): ошибка C2248: 'Foo: operator delete': не может получить доступ к закрытому члену, объявленному в классе 'Foo'
Но здесь нет вызова delete
, так что происходит в скрученном уме компилятора?:)
- В чем причина ошибки?
- Можно ли решить проблему, не прибегая к функции члена
CreateInstance
?