Кроме того, существуют ли преимущества производительности для статических методов над методами экземпляра?Когда должен быть статический метод?
я наткнулся на следующее недавно: http://www.cafeaulait.org/course/week4/22.html:
Когда метод должен быть статическим?
- Ни читает, ни пишет полей экземпляр
- независимых от состояния объекта
- Математических методов, которые принимают аргументы, применить алгоритм этих аргументов и возвращают значение
- Фабричных методы которые служат вместо конструкторов
Я был бы очень заинтересован в обратной связи Stack Переполнение сообщества на этом.
Справа в полностью оптимизированном компиляторе, когда это имеет значение (большую часть времени). – 2008-09-17 18:45:56
Он не может быть оптимизирован в C++. Вызывающий не имеет возможности узнать, что вызываемый не собирается использовать «это», поэтому должен пройти его независимо. Для других языков YMMV. – Roddy 2008-09-29 15:39:44