1。结构是值类型,类是引用类型。值类型用于存储数据的值,引用类型用于存储对实际数据的引用。即,结构体被用作值,类通过引用对实际数据进行操作。
?结构体没有功能),但不具备类的继承多态特性。2。结构体使用栈存储(Stack Allocation),类使用堆存储(Heap Allocation)。堆栈空间比较小,但数据访问效率比较高。堆空间比较大,但是数据访问效率比较低。
4。结构体赋值是直接赋值,而类赋值是传递对象的地址。
5。结构内的默认访问权和继承权是public,类内的默认访问权和继承权是private。
6. 继承的模板参数中,可以使用class定义,但不能使用struct来定义。
7。在 C 语言中,空结构体的大小为 0,而 C++ 空结构体/类的大小为 1。
定义一个矩形类(Rectangle),包含私有成员:length(长度)、width(宽度),定义成员函数:
设置长度:void set_l(int l)
设置长度width: void set_w(int w)
获取长度:int get_l();
获取宽度:int get_w();
显示函数输出矩形的周长和面积:void显示()
#包括 使用 命名空间 std;类 长方形
{
私有:int长度;int宽度;
公共:voidset_length(intl) ){长度= l;}void set_width(int w) ){宽度= w;}int get_length(){ 返回长度;}int get_width(){返回宽度 ;}空白显示(){cout << "周长为:" << 2* (长度+宽度)<<endl ;cout << "面积为:“<<长度*宽度<<endl ;}};int 主(){矩形记录;记录.设置长度(10) ;rec.set_width(5);cout << ”长度为:“ <<记录. get_length() << endl;cout << 》宽度为:“ <<rec.get_width() <<endl;rec .演出();返回0;
}