J*****n 发帖数: 4859 | 1 我有A, B两个类
在main function中,我call
Aobj.do_sth();
Bobj.do_sth();
现在我有一个C和D两个class,需要在A中计算。
简单的方法就是,把C,D作为nested class放在A中
class A{
C c;
D d;
A.do_sth {c.do_sth; d.do_sth}
}
现在的问题是,c.do_sth和d.do_sth中有些东西,我希望被Bobj所用。问题是main
function似乎不是那么好改,也就是说,我似乎不能写成
Bobj.do_sth(Aobj)
有什么建议可以解决这个问题么?
谢谢。 | N***m 发帖数: 4460 | 2 can you change B.do_sth?
can you pass A to B?
【在 J*****n 的大作中提到】 : 我有A, B两个类 : 在main function中,我call : Aobj.do_sth(); : Bobj.do_sth(); : 现在我有一个C和D两个class,需要在A中计算。 : 简单的方法就是,把C,D作为nested class放在A中 : class A{ : C c; : D d; : A.do_sth {c.do_sth; d.do_sth}
| a9 发帖数: 21638 | 3 static?
【在 J*****n 的大作中提到】 : 我有A, B两个类 : 在main function中,我call : Aobj.do_sth(); : Bobj.do_sth(); : 现在我有一个C和D两个class,需要在A中计算。 : 简单的方法就是,把C,D作为nested class放在A中 : class A{ : C c; : D d; : A.do_sth {c.do_sth; d.do_sth}
| g*****g 发帖数: 34805 | 4 Pass A to B, add getter in A for C and D.
【在 J*****n 的大作中提到】 : 我有A, B两个类 : 在main function中,我call : Aobj.do_sth(); : Bobj.do_sth(); : 现在我有一个C和D两个class,需要在A中计算。 : 简单的方法就是,把C,D作为nested class放在A中 : class A{ : C c; : D d; : A.do_sth {c.do_sth; d.do_sth}
|
|