C++:
Организация кода в функции
Как это сделать:
Давайте рассмотрим общую задачу: расчет площади круга. Вместо того, чтобы каждый раз писать одну и ту же формулу, мы заключаем ее в функцию.
#include <iostream>
#define PI 3.14159
double calculateCircleArea(double radius) {
return PI * radius * radius;
}
int main() {
double r = 5.0;
std::cout << "Площадь круга с радиусом " << r << " равна " << calculateCircleArea(r) << std::endl;
return 0;
}
Пример вывода:
Площадь круга с радиусом 5 равна 78.5397
Погружение в детали
Исторически процедуры и функции были основой структурированного программирования, которое продвигалось в 1960-х годах для борьбы с проблемами «спагетти-кода» в более ранних императивных языках программирования. Альтернативы, такие как ООП (Объектно-ориентированное программирование), заходят дальше, связывая эти функции с структурами данных. В C++ у вас есть обычные функции, методы классов (включая статические методы), лямбды и шаблонные функции, каждая из которых предлагает различные преимущества. Реализация хорошо организованных функций обычно включает в себя соблюдение принципов, таких как DRY («Не повторяйся») и SRP (Принцип единственной ответственности), что означает, что каждая функция делает только одно дело, но делает его хораздо лучше.
См. также
Для дополнительной информации о функциях в C++:
- https://en.cppreference.com/w/cpp/language/functions
- https://www.learncpp.com/cpp-tutorial/77-introduction-to-functions/
Принципы проектирования, связанные с функциями:
- https://en.wikipedia.org/wiki/Single-responsibility_principle
- https://en.wikipedia.org/wiki/Don%27t_repeat_yourself
Узнайте о лямбдах и продвинутом использовании функций: