关于C++中定义数组时,内存溢出的问题
定义了如下一个结构体:
#pragma pack(1)
struct TRC
{
int track_ID;
int start_time;
int end_time;
int point_num;
struct point track_point[400];
};
#pragma pack()
其中point结构体的定义如下:
#pragma pack(1)
struct point
{
int time;
int MMSI;
double state;
double rot;
double velocity;
int pos_acc;
double lon;
double lat;
double sog;
double heading;
char shipname[20];
int shiptype;
int IMO;
char callsign[8];
int shiplength;
int shipwidth;
int draught;
int msgid;
double range;
double angle;
};
#pragma pack()
当定义如下语句时,会出现内存溢出异常
struct TRC *trc=new TRC[5000];
求各位大侠帮忙解决!感激不尽!
[解决办法]
112*400*5000=224000000字节=约200M
内存中没有这么大的连续内存了