下面是cppreference.com上std::is_copy_constructible(1)和std::is_trivially_copy_constructible(2)文档的摘录:
1)检查类型是否为CopyConstructible,即是否具有可访问的显式或隐式复制构造函数。如果满足要求,则提供等于true的成员常量值,否则值为false。
2)与(1)相同,但复制构造函数表达式不调用任何非平凡的操作。
那么,这里什么被认为是微不足道的操作呢?
下面是cppreference.com上std::is_copy_constructible(1)和std::is_trivially_copy_constructible(2)文档的摘录:
1)检查类型是否为CopyConstructible,即是否具有可访问的显式或隐式复制构造函数。如果满足要求,则提供等于true的成员常量值,否则值为false。
2)与(1)相同,但复制构造函数表达式不调用任何非平凡的操作。
那么,这里什么被认为是微不足道的操作呢?
1条答案
按热度按时间j91ykkif1#
下面引用我的previous answer中的一段话来解释:
如果类X的复制/移动构造函数不是用户提供的并且
否则复制/移动构造函数是重要的。
基本上,这意味着如果复制或移动构造函数不是用户提供的,类中没有任何虚拟内容,并且此属性递归地适用于类的所有成员和基类,则它是微不足道的。