C ++: влияние на производительность больших классов (с большим количеством кода)

Интересно, а как писать?всемогущий» классы в c ++ фактически влияют на производительность.

Если у меня есть, например, классточка, только сuint x; Uint Y; как данные, и определили практически все, что математика может сделать для точки в качестве методов. Некоторые из этих методов могут быть огромными. (copy-) конструкторы делают только инициализацию двух членов данных.

class Point
{
   int mx; int my;
   Point(int x, int y):mx(x),my(y){};
   Point(const Point& other):mx(other.x),my(other.y){};
 // .... HUGE number of methods....
};

Сейчас. Я загружаю большое изображение и создаюточка для каждого пикселя вставьте их в вектор ииспользование их. (скажем, все методы вызываются один раз) Это только глупый пример!

Будет ли он медленнее, чем тот же класс без методов, но с большим количеством вспомогательных функций? Я не говорю о виртуальных функциях в любом случае!

Моя мотивация для этого: я часто нахожу себя пишущим хорошие и относительно мощные классы, но когда мне приходится инициализировать / использовать тонну из них, как в примере выше, я нервничаю. Я думаю, что я не должент.

я думаю, что знаю:

Методы существуют только один раз в памяти. (оптимизация в стороне)Распределение происходит только для элементов данных, и они являются единственным скопированным.

Так что это не должноне имеет значения. Я что-то пропустил?

Ответы на вопрос(9)

Ваш ответ на вопрос