c – 多个类,相同的公共接口

好吧,昨晚之后我决定改写我的问题以便于阅读.

我有两个班,陆军和战斗团.继下面的课程,虽然缺少一些部分:

class Battlegroups
{
    private: battlegroup battlegroupobject[100];

    public: 

    void AddBattleGroup(); //add a battlegroup object to the array
    void removebattlegroup(); //remove a battle group objects from the array
};

class Army
{
    private: battlegroups battlegroupsobject;

    public:

    void formbattlegroup()
    {
        battlegroupsobject.AddBattleGroup();
    }

    void disbandbattlegroup()
    {
        battlegroupsobject.removebattlegroup();
    }
};

看,问题是formbattlegroup()和disbandbattlegroup(),这似乎是它添加了一个无意义的接口.

如果有办法让我在不执行上述操作的情况下访问Addbattlegroup和removebattlegroup()方法,请告诉我.

或者,告诉我这是否是你的方式,但对我来说,似乎是为了代码添加代码.

最佳答案 如果Battlegroups仅用于包含对象,则可以在陆军中使用battlegroup battlegroupobject [100].或者使用std :: vector< battlegroup>而不是战斗群.如果不是(并且无论如何),您的决定似乎非常正确,因为这些对象有不同的责任.

点赞