Я новичок здесь, я узнал, что «новый» оператор может быть перегружен, и когда я вызываю «новый», он сначала вызывает «оператор новый», а затем «конструктор», поэтому мой вопрос:Могу ли я создать новый объект в одноэлементном шаблоне, если перегрузить новый в общедоступной зоне?
class MyClass{
MyClass(){
cout<<"contructor"<<endl;
}
public:
static MyClass* getInstance()
{
static MyClass* mm = new MyClass();
return mm;
}
void* operator new(size_t size)
{
cout<<"allocate memory\n";
void* p = malloc(size);
return p;
}
};
int main() {
MyClass* m = new MyClass();
return 0;
}