Здравствуйте, serjjj, Вы писали:
S>Есть класс Aaa. Если мне нужно работать со списками этого класса, то насколько будет кошерно сделать самые обычные функции?
S>
S>Есть класс Aaa. Если мне нужно работать со списками этого класса, то насколько будет кошерно сделать самые обычные функции?
На эту тему вообще не надо запариваться. Компилятор — как желудочный сок, расщепляет любую пищу в машинный код, поэтому какая разница, было это оливье в объектном стиле, спагетти в процедурном или суп-пюре в функциональном? Главное в этом деле — уметь готовить!
Re: Смешивание ООП и процедурного программирования
Здравствуйте, serjjj, Вы писали:
S>Смешивание ООП и процедурного программирования
Не понимаю, почему они противопоставлены.
Или вы про синтаксические отличия? Пфф, подумаешь, какой-то там синтаксис...
Вот в Аде вообще можно написать procedure Smth(in out A : MyClass) и эту процедуру можно вызывать и как
Smth(a) и как a.Smth.
Re: Смешивание ООП и процедурного программирования
Здравствуйте, serjjj, Вы писали:
S>Есть класс Aaa. Если мне нужно работать со списками этого класса, то насколько будет кошерно сделать самые обычные функции?
S>
я бы разве что голыми указателями бы не пользовался (в смысле смартпойнтеры бы использовал), а так не вижу ничего плохого. хотя, насколько помню, я обычно пишу шаблонный метод, чтобы не ограничиваться каким-то одним видом контейнеров, например QList
Re: Смешивание ООП и процедурного программирования
Здравствуйте, serjjj, Вы писали:
S>Есть класс Aaa. Если мне нужно работать со списками этого класса, то насколько будет кошерно сделать самые обычные функции?
S>
Здравствуйте, serjjj, Вы писали:
S>Есть класс Aaa. Если мне нужно работать со списками этого класса, то насколько будет кошерно сделать самые обычные функции?
Некошерно. Правильно сделать класс, который представляет объект предметной области, а список сделать его свойством.
Причем список должен быть абстрактен, чтобы не нарушать инкапсуляцию.
S>
[c#]
public class Player
{
}
public class Team
{
public IList<Player> Players { get; }
}
[/c#]
S>
Re[2]: Смешивание ООП и процедурного программирования
Здравствуйте, Аноним, Вы писали:
A>>это ты объясни что у тебя тут процедурного
А>func1 является подпрограммой, но не является методом и нет гарантии отсутствия побочных эффектов.
ну и что? олсо в С++ нету "методов"
In Zen We Trust
Re[6]: Смешивание ООП и процедурного программирования