c++中的trivial

2022-05-19  本文已影响0人  秋冬不寒

定义

当 C++ 中的类或结构具有编译器提供的或显式默认设置的特殊成员函数时,该类或结构为普通类型。

特点

一般形式

普通类型具有普通默认构造函数、普通复制构造函数、普通复制赋值运算符和普通析构函数。 在各种情况下,“普通”意味着构造函数/运算符/析构函数并非用户提供,并且属于存在以下情况的类

示例

以下示例演示普通类型。 在 Trivial2 中,Trivial2(int a, int b) 构造函数的存在要求提供默认构造函数。 对于符合普通资格的类型,必须显式默认设置该构造函数。

struct Trivial
{
   int i;
private:
   int j;
};

struct Trivial2
{
   int i;
   Trivial2(int a, int b) : i(a), j(b) {}
   Trivial2() = default;
private:
   int j;   // Different access control
};

上一篇 下一篇

猜你喜欢

热点阅读