如何设计与两个或多个类对象相关的方法

How to design methods which are related to two or more class objects?

本文关键字:对象 方法 两个      更新时间:2023-10-16

假设我有两个类A和B,我有一个名为test的方法,它与A和B中的对象有关。

我在类设计中遇到了一个问题,我应该把测试方法只放在一个类a或B中吗(如果我使用另一个类,似乎错过了方法)

或者我应该把测试同时放在A类和B类中(似乎是多余的)

A::test(B b)
B::test(A a)

有更好的方法吗?使用非成员函数?

另外,我可能有一些方法与三个/四个类有关,如何处理?

我建议您将其作为与AB:位于同一命名空间中的非成员函数

void test(A a, B b);