C中的struct只是一些数据成员组成的集合。
而C++中struct就是一个class,它具有struct所能拥有的一切功能。
此外,在使用上,在c中,使用一个struct时必须在结构名前带上struct,
而c++中可以省略。
比如
struct point{
int a,b;
};
point x;
在c中是不合法的,但是c++中可以。c中必须使用struct point x;
而C++中struct就是一个class,它具有struct所能拥有的一切功能。
此外,在使用上,在c中,使用一个struct时必须在结构名前带上struct,
而c++中可以省略。
比如
struct point{
int a,b;
};
point x;
在c中是不合法的,但是c++中可以。c中必须使用struct point x;
不过在实际使用中,即使在c++中,一般大家也会习惯于让struct只具有c中struct的功能,即只包含数据成员;如果一个对象我们还需要给它添加方法等功能,习惯上就会使用class了.
在c和c++中,均可以对struct 求sizeof: