读书人

结构体中的数据类型是否有限制,该怎么

发布时间: 2012-02-20 21:18:24 作者: rapoo

结构体中的数据类型是否有限制
我刚学c++没多久,现在正在尝试从collada文件中读取数据,因此需要定义数据结构。我想在一个单独的头文件中定义。但是运行之后报错。下面是头文件和winmain函数所在的源文件,还有错误信息。大家可以自行编译以下。
/-----------------------------/
头文件:Collada.h

#include <string>

struct Init_From
{
int num;
};

struct Image
{
Init_From m_Init_From;
};
struct ImagesLibrary
{
vector<Image> m_Images;
};
/---------------------------/
源文件

#include "stdafx.h"
#include "Collada.h"
int APIENTRY WinMain(HINSTANCE hInstance,
HINSTANCE hPrevInstance,
LPSTR lpCmdLine,
int nCmdShow)
{
// TODO: Place code here.
ImagesLibrary *imglib;
while(1)
{


}
return 0;
}

/---------------------------------------------------/

错误信息

d:\program files\microsoft visual studio\myprojects\colladaloader\collada.h(22) : error C2143: syntax error : missing ';' before '<'
d:\program files\microsoft visual studio\myprojects\colladaloader\collada.h(22) : error C2501: 'vector' : missing storage-class or type specifiers
d:\program files\microsoft visual studio\myprojects\colladaloader\collada.h(22) : error C2059: syntax error : '<'
d:\program files\microsoft visual studio\myprojects\colladaloader\collada.h(22) : error C2238: unexpected token(s) preceding ';'
Error executing cl.exe.

/---------------------/

[解决办法]
没有限制啊,当编译时,需要知道成员的具体类型
[解决办法]
#include <vector>
using namespace std;

读书人网 >C++

热点推荐