读书人

c++结构体定义解决思路

发布时间: 2012-03-09 16:54:57 作者: rapoo

c++结构体定义
c++结构体定义中能嵌套类对象吗?如果可以,问一下这样的用法有什么坏处或好处?

[解决办法]
可以


struct s0 {

int n1;
int n2;

struct sub {

int s0;
int s1;

};


};
[解决办法]
结构体内的成员默认是公有成员

类默认的是私有成员。
[解决办法]
前者嵌入了一个另一个类的对象,

坏处:
造成了A与B的依赖性,创建B对象时,总要先创建一个内部的A对象,速度很慢.
在A很大时,也导致B的对象过大.

好处:
清楚的表现出B与A的关系是 "has a "关系,即B里面含有一个A
[解决办法]
一般来说,struct提供纯数据的定义。
class是对数据和操作的封装!
struct虽也可以做class用,但是别忘了他的本质!

读书人网 >C++

热点推荐