vs2008 上MFC的vector有关问题
vs2008 下MFC的vector问题
在vs2008下,新建了MFC对话框程序,在*Dlg.h文件中定义了机构体dotData,然后在类中使用该结构体建立了vector ,程序如下
// txttestDlg.h : 头文件
#pragma once
#include <cliext/vector>
struct dotData
{
int coordinate[2];
double coefficients[9];
};
// CtxttestDlg 对话框
class CtxttestDlg : public CDialog
{ .......
public:
cliext::vector<dotData> txtData;
};
最后编译的时候产生的错误,主要是这类:C:\Program Files\Microsoft Visual Studio 9.0\VC\include\cliext/vector(14) :error C3225: “TValue”的泛型类型参数不能是“dotData”,它必须是值类型或引用类型的句柄
------解决方案--------------------
改用STL中的vector吧:
#include <vector>
using namespace std;
------解决方案--------------------
如楼上
在vs2008下,新建了MFC对话框程序,在*Dlg.h文件中定义了机构体dotData,然后在类中使用该结构体建立了vector ,程序如下
// txttestDlg.h : 头文件
#pragma once
#include <cliext/vector>
struct dotData
{
int coordinate[2];
double coefficients[9];
};
// CtxttestDlg 对话框
class CtxttestDlg : public CDialog
{ .......
public:
cliext::vector<dotData> txtData;
};
最后编译的时候产生的错误,主要是这类:C:\Program Files\Microsoft Visual Studio 9.0\VC\include\cliext/vector(14) :error C3225: “TValue”的泛型类型参数不能是“dotData”,它必须是值类型或引用类型的句柄
------解决方案--------------------
改用STL中的vector吧:
#include <vector>
using namespace std;
------解决方案--------------------
// txttestDlg.h : 头文件
#pragma once
#include <vector>
struct dotData
{
int coordinate[2];
double coefficients[9];
};
// CtxttestDlg 对话框
class CtxttestDlg : public CDialog
{ .......
public:
std::vector<dotData> txtData;
}
如楼上