gpt4 book ai didi

数组中的 C++ 对象 owerwritten

转载 作者:行者123 更新时间:2023-11-28 02:39:03 25 4
gpt4 key购买 nike

<分区>

我有一个生成新对象并将它们存储在数组中的类。问题是,一旦我添加第二个对象,第一个对象的数据就会被第二个对象的数据覆盖。我究竟做错了什么?谢谢

    Rotor rot[100]; // How can I make this flexible?

int main(int argc, char **argv) {


for (int i = 1; i < (argc - 1); i++) {
ifstream inFile;
inFile.open(argv[i]);
if (inFile.fail()) {
throw std::invalid_argument("Error reading file!");
return 1;
}
rot[i] = Rotor();
int n;
while (inFile >> n) {
rot[i].import(n);
}
}
...

类转子:

#include "Rotor.h"

int inmap[26];
int outmap[26];
int impcount;

Rotor::Rotor() {
impcount = 0;
}

void Rotor::import(int i) {
outmap[i] = impcount;
inmap[impcount] = i;
impcount++;
}

现在 rotor[1].outmap[0] 一开始是 1,但是我加上 rotor[2] 之后它变成了和 rotor[2].outmap[0] = 2 一样的值。还有一种方法可以使 Array 长度灵活,以便它只使用所需的空间吗?在后面的方法中需要它。

谢谢

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