Я отлаживаю программу. Мне нужно знать, вызван ли конструктор копирования для некоторого класса. Поскольку я не определил конструктор копирования, он сгенерировал его. Я попытался определить его и поставить там cout
, но теперь я должен вручную написать копию. Класс огромен, поэтому я не хочу этого делать. Есть ли способ проверить, вызван ли конструктор копирования, но не записывать копирование его членов. Как я могу вызвать реализацию конструктора копирования по умолчанию?Проверьте, вызван ли конструктор копирования
5
A
ответ
7
Вы можете использовать подмешать:
template<class D>
struct traced
{
public:
traced() = default;
traced(traced const&) { std::cout << typeid(D).name() << " copy ctor\n"; }
protected:
~traced() = default;
};
И тогда вы просто наследовать от класса, как так:
class my_class : public traced<my_class>
{
// usual stuff...
};
Смежные вопросы
- 1. [Prob] Почему конструктор копирования не вызван
- 2. Проверьте, вызван ли метод.
- 3. Когда конструктор перемещения вызван
- 4. конструктор копирования по адресу
- 5. конструктор и конструктор копирования
- 6. Почему конструктор копирования вызван в вызов в std :: vector :: emplace_back()?
- 7. Проверьте, вызывает ли конструктор другой конструктор
- 8. конструктор копирования не вызывается
- 9. Проверьте, чтобы определить, какой конструктор был вызван Формат ToString метод
- 10. Конструктор копирования
- 11. Конструктор будучи вызван дважды
- 12. C++: Почему здесь вызван конструктор
- 13. конструктор преобразования или конструктор копирования
- 14. Условно отключить конструктор копирования
- 15. Проверьте, вызван ли метод методом удаленного доступа?
- 16. Проверьте, не вызван ли результат вызова
- 17. Проверьте, вызван ли метод внутри другого метода
- 18. Инструкции CIL: Проверьте, вызван ли метод геттера?
- 19. Аннотация класс, конструктор копирования
- 20. Конструктор копирования/Оператор присваивания
- 21. SFINAE прочь конструктор копирования
- 22. конструктор копирования с оператором =
- 23. C++ Конструктор копирования Синтаксис
- 24. Невозможно вызвать конструктор копирования
- 25. Есть ли конструктор копирования в Javascript?
- 26. Следует ли игнорировать явный конструктор копирования?
- 27. Будет ли здесь работать конструктор копирования?
- 28. Можно ли отключить конструктор копирования std :: vector?
- 29. конструктор копирования и состав
- 30. Работает ли экземпляр-конструктор или конструктор при инициализации копирования
насчет проверки стека вызовов? – elyashiv