В приложении C ++, скажем, у меня есть класс окна, в котором есть несколько экземпляров класса управления.Если бы мое окно хотело уведомить элемент управления о том, что оно было щелкнуто, я мог бы использовать:
control[n]->onClick();
Теперь предположим, что элементу управления необходимо знать размер его родительского окна или некоторую другую информацию.Для этого я подумывал о том, чтобы передать элементу управления указатель на себя (this) в качестве параметра его конструктора.Затем я бы сделал такой вызов из метода элементов управления onClick ():
Size windowsize = parent->getSize();
Будет ли это считаться плохой практикой или каким-либо другим образом противоречить значениям объектно-ориентированного программирования?Если да, то какой он «правильный» способ сделать это?
Как побочный вопрос, лучше ли было бы иметь вектор класса или класса *?Стоит ли дополнительной сложности для увеличения скорости?(Изменения в векторе будут редкими).