C&C++   发布时间:2022-04-03  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了C组成 – 我必须包装所有这些功能吗?大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
我有一个C类描述了3D空间中对象的方向 – 位置,旋转,缩放等.我有其他类必须需要这样的信息(或其一部分) – 模型,地形,摄像头等.现在我可以让我的方向课的子类,但是谷歌已经告诉我喜欢组合继承.这在哲学上是有意义的 – 一个模型不是一个方向,它有一个(并且是的,我知道是一个事情只是一个启发式).然而,似乎不必要的是,对于所有那些未来的子类来说,重写相同的包装方法几乎是不合适的.像model.getOrientation().set_x(1)这样的东西似乎也很傻.

我可以看到为什么对于小对象来说这不是“太糟糕”,但是对于这个例子(和其他人)来说,如果你必须穿过箍来假装你使用继承,那么这个组合是什么意思?我现在应该甚至使用吗?我几乎肯定我在想这个不正当.

解决方法

它可能看起来很傻,但是你的model.getOrientation().set_x(1)可能是要走的路.

如果你厌倦了键入getOrientation()部分,你可以尝试这样的:

Orientation & orient = model.getOrientation();
orient.set_x(1);
orient.set_y(1);
if( orient.check_something() ) {
  //whatever
}
//etc.

大佬总结

以上是大佬教程为你收集整理的C组成 – 我必须包装所有这些功能吗?全部内容,希望文章能够帮你解决C组成 – 我必须包装所有这些功能吗?所遇到的程序开发问题。

如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。