|
|
От: |
Mikhail Polykovsky
|
|
| Дата: | 18.02.07 06:50 | ||
| Оценка: | |||
Любой метод объекта должен обращаться только к методам, принадлежащим:
— тому же классу
— любым объектам, переданным в метод в качестве аргументов
— любым создаваемым им объектам
— любым непосредственно содержащимся объектам компонентов
void Demeter::example(B& b){
b.invert(); // Так можно
b.getUser.name(); // Так не рекомендуется
}void обслуживание(Машина машина){
машина.левоеПереднееКолесо().накачать();
}void обслуживание(Машина машина){
машина.накачатьЛевоеПереднееКолесо();
}void обслуживание(Машина машина){
колесо = машина.левоеПереднееКолесо();
накачать(колесо);
}
void накачать(Колесо колесо){
колесо.накачать();