Junior — Middle
Explique el concepto de polimorfismo estático y su uso en programación.
sobes.tech AI
Respuesta de la IA
Статический полиморфизм — это способность языка программирования выбирать реализацию функции или метода во время компиляции, а не во время выполнения.
В C++ статический полиморфизм достигается через шаблоны (templates) и перегрузку функций. Это позволяет создавать обобщённый код, который компилируется под конкретные типы, обеспечивая высокую производительность без накладных расходов виртуальных вызовов.
Пример использования шаблонов:
template<typename T>
T add(T a, T b) {
return a + b;
}
int main() {
int x = add(2, 3); // вызов для int
double y = add(2.5, 3.5); // вызов для double
}
Статический полиморфизм полезен, когда важна производительность и типобезопасность, например, в библиотеках STL или при реализации алгоритмов с обобщёнными типами.