#include <iostream> using namespace std; class A { public: A() { } //virtual
~A() = 0; private: int a; }; int main() { cout << boolalpha; //Class 不带任何成员
virtual成员函数或virtual base class cout << is_empty<A>::value << endl; //Class
带有一个(derived)virtual成员函数 cout << is_polymorphic<A>::value << endl;
//抽象类(至少含有一个纯虚函数) cout << is_abstract<A>::value << endl; //Class 含有虚析构函数 cout
<< has_virtual_destructor<A>::value << endl;//Class 能否使用默认构造函数(抽象类必为false) cout
<< is_default_constructible<A>::value << endl;//Class 能否使用复制构造函数(抽象类必为false)
cout << is_copy_constructible<A>::value << endl; //Class 能否使用移动构造函数(抽象类必为false)
cout << is_move_constructible<A>::value << endl; //Class 能否使用复制赋值函数 cout <<
is_copy_assignable<A>::value << endl;//Class 能否使用移动赋值函数 cout <<
is_move_assignable<A>::value << endl;//Class 能否合成默认构造函数 cout <<
is_trivially_default_constructible<A>::value << endl;//Class 能否合成复制构造函数 cout <<
is_trivially_copy_constructible<A>::value << endl;//Class 能否合成移动构造函数 cout <<
is_trivially_move_constructible<A>::value << endl;//Class 能否合成复制赋值构造函数 cout <<
is_trivially_copy_assignable<A>::value << endl;//Class 能否合成移动赋值构造函数 cout <<
is_trivially_move_assignable<A>::value << endl;//Class 能否使用默认构造函数且不抛出异常 cout <<
is_nothrow_default_constructible<A>::value << endl;//Class 能否使用复制构造函数且不抛出异常 cout
<< is_nothrow_copy_constructible<A>::value << endl;//Class 能否使用移动构造函数且不抛出异常
cout << is_nothrow_move_constructible<A>::value << endl; //Class
能否使用复制赋值函数且不抛出异常 cout << is_nothrow_copy_assignable<A>::value << endl; //Class
能否使用移动赋值函数且不抛出异常 cout << is_nothrow_move_assignable<A>::value << endl; //Class
能否使用析构函数且不抛出异常 cout << is_nothrow_destructible<A>::value << endl; system("pause"
);return 0; }

技术
©2019-2020 Toolsou All rights reserved,
Django个人博客搭建教程---时间分类归档你不知道的鸿蒙——HarmonyOS记录一次游戏私服getshell过程mysql联合索引详解百度网盘偷偷更新,终于实现免费不限速了! 全球第一免费开源ERP Odoo Ubuntu最佳开发环境独家首发分享uniapp页面传值总结Android中获取当前正在显示的Activity实例SQL Server 数据库词汇表Python垃圾回收与内存泄露