1. 从语法上,在C++中(只讨论C++中)。class和struct做类型定义时只有两点区别:
(一)默认继承权限。如果不明确指定,来自class的继承按照private继承处理,来自struct的继承按照public继承处理;
(二)成员的默认访问权限。class的成员默认是private权限,struct默认是public权限。
除了这两点,class和struct基本就是一个东西。语法上没有任何其它区别。
2.使用new
有这样一个结构体:
typedef struct MineField
{
BOOL isMine; //1 is mine,0 is not mine, -1 unknown.
int nearByNum; // the number of this grid's around.
MineField()
{
isMine = -1;
nearByNum = 0;
}
} MINEFIELD, *LPMINEFIELD;
MINEFIELD* pMineField;
pMineField = new MINEFIELD[count];
struct MineField* s;
s= new MineField[10];