学习了吕鑫老师的视频讲解,搞清楚了c++的结构体和类与c的结构体之间的联系和区别。
其实在c++中结构体的方法并不占用空间,仅有属性占空间。c++不过是对c的美好封装。
比如c++定义的结构体代码如下:
struct SDate{
int year;
int month;
int day;
void setdate(int y, int m, int d)
{
year = y;
month = m;
day = d;
}
};
其实质对应的c代码为:
struct SDate
{
int year;
int month;
int day;
};
void setdate(struct SDate *p,int y, int m, int d)
{
p->year = y;
p->month = m;
p->day = d;
}