gpt4 book ai didi

c++ - 为什么这会抛出访问冲突异常?

转载 作者:行者123 更新时间:2023-11-28 04:44:25 24 4
gpt4 key购买 nike

我的这行代码抛出异常:(抛出未处理的异常:写入访问冲突。这个->v 是 0x443E112)

v[i] = v[i - k]; 

在下面的函数中:

void NagyEgesz::eltolJobbra(int k) {
this->n = this->n + k;

for (int i = n-1; i >= k ; i++) {
v[i] = v[i - k];
}
for (int j = 0; j < k; j++) {
v[j] = 0;
}

这是类的声明:

class NagyEgesz{

int *v;
int n;
int elojel;

public:

NagyEgesz();
NagyEgesz(int elojel, int n, const int* szamjegyek);
NagyEgesz(const NagyEgesz &x);
~NagyEgesz() {
delete v;
}
void kiir();
void eltolJobbra(int k);
NagyEgesz osszead(const NagyEgesz &x);

};

最佳答案

这看起来像是一个倒序的循环:

for (int i = n-1; i >= k ; i++) {

因此您应该将 i++ 替换为 i--

以后发现类似问题的提示:write access violation 通常意味着数组索引中的拼写错误

关于c++ - 为什么这会抛出访问冲突异常?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49569238/

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