gpt4 book ai didi

c++ - 为什么只有定义了类才能将数据成员指定为类类型? (来自书 "C++ primer")

转载 作者:塔克拉玛干 更新时间:2023-11-03 01:03:45 26 4
gpt4 key购买 nike

在《C++ primer》一书中有一节是关于类声明和定义的。我不明白这句话的一切:

data members can be specified to be of a class type only if the class has been defined.

我不明白这句话背后的逻辑。你如何指定一个数据成员是一个类类型,这个 Action 是什么意思?

最佳答案

这意味着,对于类类型T的非静态类数据成员的声明,T必须是complete。 .

(In general, when the size and layout of T must be known.)

例如

class foo;    // forward declaration
class bar {
foo f; // error; foo is incomplete
};

另一方面,

class foo {}; // definition
class bar {
foo f; // fine; foo is complete
};

关于c++ - 为什么只有定义了类才能将数据成员指定为类类型? (来自书 "C++ primer"),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42060341/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com