gpt4 book ai didi

c++ - C++头文件中的对象初始化问题

转载 作者:行者123 更新时间:2023-11-30 02:10:39 25 4
gpt4 key购买 nike

我在用 C++ 编写代码,我在类的头文件中有私有(private)数据成员。

private:
Object1 obj1;
Object2 obj2(&obj1);

因此,第二个对象采用指向第一个对象的指针。当我尝试编译程序时,出现以下错误:

“‘&’标记前的预期标识符”

有没有办法在实现文件中实例化此类的构造函数中的对象而不是它的定义?我该如何纠正这个错误?该程序无法编译。

最佳答案

在 C++ 中,您不能将成员初始化为类定义的一部分。这种操作应该在构造函数中完成:

myClass() : obj2( & (this->obj1) ) { ... }

这通常会产生一个警告,但只要 obj2myClass 的构造完成之前不使用其构造函数参数就可以了。

关于c++ - C++头文件中的对象初始化问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4419226/

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