类中的动态数组

时间:2011-04-14 21:13:50

标签: c++ arrays dynamic

我一直在寻找一段时间试图了解如何拥有一个类,然后如何在其中拥有一个动态数组。

我正在尝试构建一个银行帐户c ++程序,它将创建无限数量的帐户(内存是唯一的限制),所以我想要一个动态数组,其中说,p [1]是第一个帐户然后p [ 2]是第二个帐户,并且让它成为bankAccount类的成员。因此,我可以将数组放在内存位置1,即帐号1,然后还有其他信息,如姓氏,余额等与之关联。也许类似于如果我在类bankAccount中有数组p [],那么我可以使用p [1] .name。

我是这个网站的新手,如果有更好的方式提问或发布代码示例,请随时告诉我。

这是我遇到问题的主要部分,将动态数组声明为该类的成员:

class bankAccount
{
    int i;
    int index;
    int AccountNum;
    double balance;
    string last;
    string first;
public:
    void intro();
    void deposit();
    void withdraw();
    void newAcc ();
    void editAcc();
    void chgAcc();
    void print();
    bankAccount::bankAccount();
}p [10]; // This is what i want to be dynamic

谢谢。

3 个答案:

答案 0 :(得分:3)

我认为您要查找的数据结构是std::vectorstd::vector基本上是一个动态阵列,但一切都是为你管理的。

我实际上甚至会说你永远不应该在C ++中使用动态数组,这就是我将C类概念作为被取代的类。 (所有规则都有例外,但我的意思是,除非您 知道 为什么要在vector上选择动态数组,否则您应该选择vector

答案 1 :(得分:0)

看起来你正试图自己实现动态数组,看看这段代码:

 bankAccount *p; 

C ++ STL已经实现了动态数组,即std::vector

答案 2 :(得分:0)

当我是1时你分配了backAccount [i]。当你创建一个新帐户时,你需要释放这个是重新分配。如果你起诉std :: vector,你的生活将更容易分配。