gpt4 book ai didi

C++ 对象数组 - 类型不完整

转载 作者:搜寻专家 更新时间:2023-10-31 00:42:21 25 4
gpt4 key购买 nike

我正在做一项 C++ 作业,我不是特别精通这门语言。

我正在尝试在文件 main.cpp 中声明一个“帐户”对象的动态数组:

Account * acctArray = new Account[];

main.cpp 包括 Account.h:

class Account {
private:
int customerID;
int BSB;
int acctNumber;
string surname;
string firstName;
double balance;
double withdrawn;
public:
Account() {};
//setters
void setCustID(int ID);
void setBSB(int inBSB);
void setAcctNo(int number);
void setSurname(string sname);
void setFirstName(string fname);
void setBalance(double bal);
void setWithdrawn(double withd);
//getters
//(snipped for irrelevance)
//methods
bool withdraw(double amount);
};

但是,在我的 uni 的 unix 机器(必须提交作业的机器)上编译时,出现以下错误:

"main.cpp", line 130: Error: The type "Account[]" is incomplete.

我尝试编译

Account * acctArray = new Account[5];

看看我是否可以隔离问题,这一行编译正常。

我做错了什么??我担心解决方案在于指针/引用,而我对此缺乏理解。

最佳答案

C++ 中的数组具有固定大小。没有内置的“动态数组”功能。如果你想要一个动态数组,使用 std::vector<Account> .

I am working on an assignment in C++, a language I am not particularly proficient in.

最好避免new尽可能显式动态分配。如果您认为需要使用 new 动态分配某些内容并自己管理,可能有更好的方法来完成任务。

关于C++ 对象数组 - 类型不完整,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12102792/

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