Вопрос : Как запрограммировать наилучшим образом

Я имею конструкцию/мировоззренческую проблему, и надеваю знаю что разрешения choose.

ClassWithData - тип который хранит данные для ClassWithFunction
ClassWithFunction - тип которое делает что-то путем вызывать свое

class A
функции {компактный диск
ClassWithData; Cf
ClassWithFunction;
private:

RunWrapper () {
cf.function (компактный диск);            

}};

OR

class A
{компактный диск
ClassWithData; Cf
ClassWithFunction;
private:

RunWrapper (ClassWithData& x) {
cf.function (x);            

}};
Iam

(RunWrapper будет ofcourse приватным) запутанное с тем потому что, иногда я пишу как в первые пример и иногда a как второе без любого reson.
class=

Ответ : Как запрограммировать наилучшим образом

О'кейо iий видит, спасибо для вывешивать коллекторы. :)

Это Кодий ясно overcomplicating вещи, фактическ свой только 1 тип необходимо, довольно чем 3.

Препятствует звоноку оно «процесс»:

процесс типа
{
публика:
    Процесс (std:: wstring executable_name_, std:: wstring command_line_);
    ~Process (свободное пространство);

    пустое StartProcess ();

приватно:
    пустое CreateProcessAsActiveSession ();
    bool GetActoveConsoleSessionId (session_id DWORD&);

приватно:
    std:: wstring executable_name_;
    std:: wstring command_line_;
};

Член-функция «StartProcess» принадлежит в этот тип, потому что все, котор для этого оперируя понятиями данных, здесь.

Вы видите они имеет полностью функциональность, как 3 типа, но он помещает данные и функции которые приводятся в действие дальше те данные в 1 месте. То намеревается «заключением» оперируя понятиями OO-Программировать.
Добавочно оно имеет более чистую поверхность стыка и легке использовать.

Возможно оно делает им clearer, если вы думаете о добавлять новые функциональности, как KillProcess и другие, то они, котор все принадлежат в этот тип. Держите данные и функции приводятся в действие дальше те данные совместно в 1 месте.
Другие решения  
  •  Как я добавляю кнопки на форме PDF для того чтобы добавить/извлекаю рядки данных?
  •  Шнур ошибки в блоке задвижки?
  •  сколько вариант сервера SQL на одной машине
  •  Внешний вид 2007 не может архивный файл открытой сети сохраненный
  •  Активно директория DNS записывает вопрос
  •  Отчет о доступа 2010 экспорта к CSV с коллекторами?
  •  Прокладчик OCE 9400 не начинает
  •  как добавить десятичное место в формуле в отчете о кристалла seagate
  •  Windows XP и Мичрософт Оутлоок и проблемы установителя Windows
  •  VB6 к VS2010 - консультации тренировки?
  •  
    programming4us programming4us