Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/visual-studio-2010/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C++ 在VS2010错误值中调试cpp_C++_Visual Studio 2010 - Fatal编程技术网

C++ 在VS2010错误值中调试cpp

C++ 在VS2010错误值中调试cpp,c++,visual-studio-2010,C++,Visual Studio 2010,我遇到了一个调试问题,我无法理解这种情况。所附图片是快照pos是整数向量。我不明白为什么我不能 pos[k]-pos[j] 在调试窗口中正确显示。不过,应用程序运行良好,输出正确。我想知道这是否是由于某些IDE配置造成的。欢迎提出任何意见 根据您使用的标准库的版本,在“监视”窗口中查找vector的成员,并使用它们而不是运算符[]。例如,对于VS2013,这在监视窗口中起作用: pos._Myfirst[ j ] - pos._Myfirst[ k ] 由于_Myfirst是指向向量存储的指针

我遇到了一个调试问题,我无法理解这种情况。所附图片是快照
pos
是整数向量。我不明白为什么我不能

pos[k]-pos[j]

在调试窗口中正确显示。不过,应用程序运行良好,输出正确。我想知道这是否是由于某些IDE配置造成的。欢迎提出任何意见


根据您使用的标准库的版本,在“监视”窗口中查找vector的成员,并使用它们而不是运算符[]。例如,对于VS2013,这在监视窗口中起作用:

pos._Myfirst[ j ] - pos._Myfirst[ k ]

由于_Myfirst是指向向量存储的指针

它看起来像一个IDE解析错误,请尝试在
减号
字符周围添加空格,这有帮助吗?@JoachimPileborg屏幕截图显示,
pos
被定义为:
std::vector
还是我错了?@kolenda添加空格没有help@STNYU问题在于向量的
运算符[]
是一个函数。您所做的基本上与尝试通过调试器调用成员函数没有什么不同。尝试这样做总是VS调试器的一个问题。@STNYU-这不是一个bug,只是调试器的一个缺点。AFAIK调试器无法执行函数调用。也许最新版本已经改变了这一点,但是自从VC++1.0以来,函数调用执行“动态”从未实现过。