【发布时间】:2020-04-26 11:21:46
【问题描述】:
作为一名 C++ 初学者,我经常发现自己在头文件中声明类属性时遇到了困难,这些属性需要更多信息而不仅仅是名称,例如 arrays 和 objects其他类的构造函数。
这是一个例子
SomeClass.h :
#include "OtherClass.h"
class SomeClass {
int num; // works fine
float arr[]; // produces an error because size is not declared
OtherClass obj; // produces an error because the constructor parameters are not passed in
public:
void setup();
void update();
};
SomeClass.cpp:
#include "SomeClass.h"
void SomeClass::setup() {
num = 10; // easy peasy, works!
arr = float some_arr[5 * num]; // error
// Fill in the array
for (int i = 0; i < 5 * num; i += num) {
ass[i] = 12;
}
// Fill in the class attributes
obj = {120, 40}; // error
}
void SomeClass::update() {
// Update stuff
}
如果是数组arr,如果在头文件中声明时我不知道它的大小,我该如何声明一个数组?
如何在头文件中声明带有构造函数的类对象,而此时不传入未知参数?
谢谢。
【问题讨论】: