class CommandSchedule
{
private :
List<SubSchedule*> mSubScheduleList;
public :
void addSubSchedule (int id)
{
mSubScheduleList.add(new SubSchedule(id));
}
SubSchedule* addSubSchedule (int id)
{
SubSchedule* item = new SubSchedule(id);
mSubScheduleList.add(item);
return item;
}
};
このクラスでは、voidを返す1つのaddSubSchedule関数と、オブジェクトへのポインタを返す関数を定義します。カプセル化とオブジェクトへのポインタ
私の質問は、オブジェクトへのポインタを返す関数がCommandScheduleクラスのカプセル化を解除する場合です。私はカプセル化の問題に不快感を感じるので、どんな助けでも大いに感謝しています。
本当に両方の方法が必要ですか?冗長に見えるので、 'void'バージョンを削除することを検討したいかもしれません。 –