作为类成员的 C++ 类变量
c++ class variable as class member
我收到消息:在以下代码中class AInv {
字符串undefined reference to AVector::AVector()
:
#ifndef AINV_HPP_
#define AINV_HPP_
#include "AVector.hpp"
class AInv {
public:
double w;
double g;
AVector vector;
};
#endif /* AINV_HPP_ */
AVector 的定义:
#ifndef AVECTOR_HPP_
#define AVECTOR_HPP_
class AVector {
public:
double x;
double y;
double z;
AVector();
AVector(const AVector &v);
};
#endif /* AVECTOR_HPP_ */
是否可以使用类变量(而不是地址)作为类成员?我想避免变量向量的显式构造函数/析构函数。
是否可以使用类变量(而不是地址)作为类成员?
是的,它是。
不需要显式析构函数我想避免变量向量的显式构造函数/析构函数。
;类类型的每个成员的析构函数将由AInv
析构函数自动调用,无论您是自己编写还是让编译器生成隐式析构函数。
若要避免显式构造函数调用的需要,成员类型必须具有可访问的默认构造函数。你已经声明了一个,所以这很好。
但是,错误消息指示您忘记定义默认构造函数,或者未链接到包含定义的文件。
相关文章:
- 查找后更改类变量
- 如何避免在仅标头库中C++类/变量重定义
- c++ 在非类函数中使用类变量
- 基于模板的类变量
- 分段 访问私有类变量时出错
- 为什么从另一个构造函数内部调用C++构造函数不修改类变量?
- 如何访问基类向量中的子类变量?(对于实体组件系统)
- 模板类变量作为非模板类的成员
- C++11 - 获取编译时的所有类变量,并在没有 Boost 的情况下为它们调用方法
- 如何在构造函数中访问类变量以分配它们,而无需在C++中使用此指针
- 类变量无法从类方法访问
- 指针作为类变量 Qt
- 为什么线程对类变量所做的更改没有影响?
- memcpy() 在一个类中被调用以复制到另一个类变量中后会引发异常
- C++:使用基类中的仅派生类变量
- 从静态成员函数访问私有非静态类变量 - C++
- 静态类变量的多重定义
- 使用 WindowSetup 类变量获取错误
- 将文本文件读入类变量 - c++
- 获取作为类变量的 Deque 大小时未定义的行为