Возможный дубликат:
Обнаружить динамически размещенный объект?
У меня есть объект, который требует немного другой конструкции, независимо от того, является ли его экземпляр статическим или динамическим. Объект должен иметь только один конструктор по умолчанию. Таким образом, не может быть и речи о двух конструкторах, по одному для каждого случая, и о том, что пользователь явно выбирает правильный конструктор.
Есть ли правильный способ добиться этого?
Вот как я делаю это на данный момент: я перегружаю новый оператор для этого объекта, выделяю память и использую возвращенный указатель в качестве указателя на (еще не инициализированный) экземпляр и устанавливаю определенный элемент данных объекта в какое-то магическое значение. Затем в конструкторе я проверяю значение члена. Если это магическое значение, то объект на 99,9% распределяется динамически.
Этот метод еще не подвел меня ни в режимах релиза, ни в режимах отладки, однако он кажется ужасным взломом.