我无法弄清楚此访问冲突错误。有人可以帮帮我吗?

时间:2012-12-13 02:05:01

标签: c++ oop visual-studio-2012 access-violation

我找不到这个问题的来源,这让我疯了!我的主要和一个pastebin链接在下面。我一直收到这个错误:

First-chance exception at 0x0FFE108E (msvcr110d.dll) in MasterMindFSM.exe: 0xC0000005: Access violation reading location 0x2CF0D131. Unhandled exception at 0x0FFE108E (msvcr110d.dll) in MasterMindFSM.exe: 0xC0000005: Access violation reading location 0x2CF0D131.

这是我的主要内容:

#pragma once

#include <iostream>
#include "Answer.hpp"

using namespace Games::MasterMind;

int main() {
   Answer Line;

   std::cout << Line.getAnswer(0) << std::endl;
   std::cout << Line.getAnswer(1) << std::endl;
   std::cout << Line.getAnswer(2) << std::endl;
   std::cout << Line.getAnswer(3) << std::endl;

   system("pause");

   return 0;
}

以下是main附带的头文件: (抱歉,但它丢失了格式化)

Answer.hpp

1 个答案:

答案 0 :(得分:1)

问:什么是“线”?

问:构造函数是否分配了答案(0),答案(1),答案(2),......?

在使用实体之前未能分配实体很容易导致分段违规;)

======================================

我只是看着你(聪明地隐藏;))“Answer.hpp”。

问题:

1)“getAnswer()”看起来非常好(我认为这就是你遇到问题的地方)

2)实际问题出现在“setAnswer()”中 - 你正在运行数组的末尾!