我正在为一种明确认为不可默认构造的类型编写测试驱动程序。有什么方法可以在我的测试驱动程序中断言是这种情况吗?我可以通过编译错误手动验证,但我想要一些东西来防止将来可能错误地添加默认构造函数的更改。
编辑:我被困在 C++03 的环境中。记住这一点,除了 is_default_constructable
之外还有其他选择吗?
最佳答案
您可以使用 static_assert(!std::is_default_constructible<T>::value, "Boo");
.确保 #include <type_traits>
.
关于c++ - 有没有办法测试默认构造函数不存在?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24638532/