首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > 编程 >

【Struct(构造体)杂谈之七】Struct中0元素数组的意义在哪里

2012-12-20 
【Struct(结构体)杂谈之七】Struct中0元素数组的意义在哪里?Struct中0元素数组的意义上一回我们在【Struct(结

【Struct(结构体)杂谈之七】Struct中0元素数组的意义在哪里?

Struct中0元素数组的意义

上一回我们在【Struct(结构体)杂谈之六】无既是有---没有成员变量的Struct(结构体)    文章的结尾留了一个悬念---为什么0元素数组在class和struct结构体之外定义就是错误的,而在class和struct中定义就是Okay的,那么结构体中的0元素数组意义何在?

打个通俗的比喻,比如一个部门,有部门经理、PM、以及数量众多的苦逼程序猿们,某天部门接到一个项目,于是乎,拉出一个PM及数量未知的程序猿们,开工了:


#include <iostream>using namespace std;struct Department{int Manager;int PM;int ProgrammerNo[0];};int main(void){Department *pt = NULL;int Num = 5;pt = (Department *)malloc(sizeof(Department) + sizeof(int) * Num);pt->ProgrammerNo[0] = 006;pt->ProgrammerNo[1] = 99;getchar();return 0;}

做一个项目,程序猿的数量是变化的,因此我们也就知道struct中0元素数组意义就是可以作数量未知的扩展。

热点排行