VS2005 调试时查看变量时崩溃,该如何解决

VS2005 调试时查看变量时崩溃
如题,发现一个bug,使用以下方法,在调试时查看
vector<vector<_variant_>>
 类型变量的数据时visual studio崩溃,具体:

使用visual studio 2005新建一个空工程,加入最下面那段代码,在第45行

printf( "hello, bug\n");


处添加一个断点,然后调试,断在45行后,把鼠标放在第41行

data.push_back(row2);


这行的 “data”处查看“data”中的内容,然后 VS就崩溃了,不知道有什么解决方法没有,有补丁吗?


#include <stdlib.h>
#include <vector>
#include <comutil.h>

#pragma comment(lib, "comsuppwd.lib")

using namespace std;

typedef vector<_variant_t> TABLE_ROW;
typedef vector<TABLE_ROW> MEMORY_TABLE;


int
main(int argc, char *argv[])
{
MEMORY_TABLE data;

TABLE_ROW row;
row.push_back(_variant_t("abcdefg"));
row.push_back(_variant_t("b"));
row.push_back(_variant_t("c"));
row.push_back(_variant_t("d"));
row.push_back(_variant_t(5.1));
row.push_back(_variant_t(6.2));
row.push_back(_variant_t(7.4));
row.push_back(_variant_t(8.5));
row.push_back(_variant_t(9.7));
row.push_back(_variant_t("1"));
row.push_back(_variant_t(0));
row.push_back(_variant_t(0));
row.push_back(_variant_t(1));
row.push_back(_variant_t("eeeeeee"));
data.push_back(row);

TABLE_ROW row2;
row2.push_back(_variant_t(5.1));
row2.push_back(_variant_t(6.2));
row2.push_back(_variant_t(7.4));
row2.push_back(_variant_t(8.5));
row2.push_back(_variant_t(9.7));
data.push_back(row2);



printf( "hello, bug\n");
system("pause");
return 0;
}

------解决方案--------------------
引用:
Quote: 引用:

额,很诡异的问题



你测试了啊?也崩溃吗?

嗯,也崩了
------解决方案--------------------
VS2005 调试时查看变量时崩溃,该如何解决
是这样么?
------解决方案--------------------
vs2008崩溃,vs2010以上的不崩溃

猜测要么是autoexp.dat本身写得有问题,要么是IDE对autoexp.dat的处理有问题
------解决方案--------------------
引用:
Quote: 引用:

IDE上装了SP1的补丁


是VS2005吗? 麻烦把sp1补丁全名告诉我呗

VS80sp1-KB926604-X86-CHS.exe
应该是这个,我的开发环境由于最近有个项目需要,删掉了很多别的开发环境,使得VS2005有问题没法看具体装的哪个补丁,但是文件名应该就是这个