【发布时间】:2016-01-23 19:12:55
【问题描述】:
我正在尝试存储基类的对象 (employee),或指向另一个类 (finance) 对象中的向量/数组内的对象的指针。员工对象的数量取决于用户,因此它需要动态工作。到目前为止,我有这个:
finance.h
#ifndef FINANCE
#define FINANCE
#include "freight.h"
class finance
{
public:
finance();
~finance();
};
#endif // FINANCE
finance.cpp
#include "finance.h"
using namespace std;
finance::finance()
{
vector<employee *> vemployee; //first problem line
}
finance::~finance()
{
}
main.cpp
void add_manager()
{
string name;
name = get_string_input("Please input the name of the employee.");
vManagers.push_back(new manager(name)); //second problem line
ask_employee();
}
Main.cpp 还包含在我所有的.h 文件以及finance.cpp 中。我在 main 和 finance.cpp 上都遇到错误,说的是预期的主表达式,但没有在范围内声明。
注意:
我显然做错了什么,但老实说我不知道向量是我还没有学过的东西。如果有办法用数组做到这一点,我也不介意尝试。
【问题讨论】:
-
课程
employee和manager是否存在? -
确实有,但我认为最好只发布与向量直接交互的那个,而不是发布 200 多行代码。这些类工作正常,只是在我尝试在 Finance 中添加对象存储时才崩溃。
-
好吧,你也不应该发布超过 200 行代码。您应该将代码减少到重现问题所需的最少行数。见stackoverflow.com/help/mcve
-
嗯,这就是我在这里所做的,不是吗? add manager 函数尝试将对象添加到 Finance 内部的数组中。除了我包含的三个部分,我还能删减或添加什么?
-
废话。 stackoverflow.com/help/mcve 中清楚地解释了替代方案。
标签: c++ arrays class object vector