"人"这个类里可以包含"脚踏车"类作为成员变量吗

"人"这个类里可以包含"自行车"类作为成员变量吗?
最近在看设计模式方面的书。想想我以前的做法,因为一个类可能要经常用到一个变量,就把这个变量设置为类的成员变量,但可能跟类本身关联并不大。
最常见的是,MFC里,在Dialog类里放一些逻辑处理过程中要用到的变量。如,经常要用到string strTemp;干脆把它设置为成员变量,每个需要strTemp的成员函数用的时候直接用就行了,就不需要再申明了,感觉很"合理"、很方便。


抽象话这个问题,可能要做一个"人"类(更形象的说法是,日常使用交通工具的人 类),可能某些成员函数要用到自行车,而一个人经常用到的自行车又是同一辆,干脆把它设置成成员变量。这样有一个好处就是不用在成员函数里老重新构造一个新的自行车。只需要在类构造的时候构造一辆自行车就行。但这样呢,又显得类臃肿了。

到底怎样把握呢?
------解决方案--------------------
实现是和具体的需求相关的。
不知道需求如何谈实现呢。
------解决方案--------------------
我认我最好不要直接包含自行车,而是包含它的基类指针数组类似于vector<物品*>
如果有自行车的话就添加一个自行车过去。

当然具体问题要有所变化,如果每个人都有自行车那可能还是直接放一个自行车在里面的好。
------解决方案--------------------
那要这么看了,但在设计中减少耦合和增加复用角度,是不建议包含的,可通过抽象来减少耦合
------解决方案--------------------
"人"这个类里可以包含"脚踏车"类作为成员变量吗