Функции и модули в Rust
Функции и модули
29
В языке Rust функции могут принимать и возвращать значения. Они являются основными строительными блоками программы.
Синтаксис определения функции выглядит следующим образом:
fn имя_функции (аргументы: тип_аргументов) -> тип_возвращаемого_значения { // тело функции }
Пример функции, складывающей два целых числа и возвращающей их сумму:
fn sum(a: i32, b: i32) -> i32 { return a + b; }
Модули позволяют группировать функции, структуры и другие элементы кода в согласованные блоки.
Определение модуля выглядит так:
mod имя_модуля { // содержимое модуля }
Пример использования модуля в коде:
mod math { pub fn sum(a: i32, b: i32) -> i32 { return a + b; } } fn main() { let a = 2; let b = 3; let result = math::sum(a, b); println!("{} + {} = {}", a, b, result); }
Здесь мы создали модуль math
, который экспортирует одну функцию sum
. Для вызова функции в главной функции main
мы указываем имя модуля перед именем функции через двойное двоеточие (math::sum
).
Ключевое слово pub
перед функцией указывает, что функция является публичной и может быть вызвана из кода в других модулях. Если ключевое слово pub
не указано, то функция будет приватной и доступна только в пределах модуля.
March 27, 2023