Найти в Дзене
Классы в языке Carbon
Ключевое слово class в языке Carbon используется для объявления классов. Для классов возможны члены и методы. Ниже приведен пример реализации класса. Пример package ExplorerTest api; class Sum { var a: i32; fn Add[me: Self](var num: i32) -> i32 { var total: i32 = me.a + num; return total; } } fn Main() -> i32 { var p1: Sum = {...
3 года назад
Функции в языке Carbon
Функции в языке Carbon играют ту же роль, что и в C, Php или любом другом функциональном языке. Она используется для разделения функциональности для повторного использования. Например, функция для сложения двух чисел. Введение Структура функции выглядит следующим образом fn имя_функции (параметры) -> возвращаемый_тип {} Здесь: Пример fn multiply (x: i32, y: i32) -> i64 { return x * y; } Здесь мы создали функцию для умножения двух 32-битных целых чисел, в результате чего получается 64-битное целое число. Таким образом, возвращаемый тип - i64. Рассмотрим другой пример: package Sorting api; fn...
3 года назад
Циклы в языке Carbon - while, for, break, continue, return
В языке Carbon мы можем использовать циклы for и while. Внутри цикла для управления потоком можно использовать операторы break и continue. Цикл while Цикл while в Carbon похож на цикл любого другого языка. Он выполняется до тех пор, пока условие цикла не вернет значение true. Пример: var x: i8 = 0; while (x < 3) { Print(x); ++x; } Print("Done!"); // Output: 0 1 2 Done! В этом примере кода мы объявили 8-битную целочисленную переменную x и присвоили ей значение 0. Затем с помощью цикла while мы выполняем цикл до тех пор, пока значение x не станет меньше 3, и печатаем это значение. Вместе с этим мы увеличиваем значение x с помощью оператора инкремента ++...
3 года назад
Сопоставление условий в языке Carbon
В языке Carbon нет оператора switch, но есть match. match - это поток управления, похожий на switch из C и C++ и отражающий аналогичные конструкции в других языках, таких как Swift. Введение match имеет такую структуру: match (expression) { case value => { ... break; } default => { ... break; } } Здесь необходимо понять несколько моментов. Пример fn Bar() -> (i32, (f32, f32)); fn Foo() -> f32 { match (Bar()) { case (42, (x: f32, y: f32)) => { return x - y; } case (p: i32, (x: f32, _: f32)) if (p < 13) => { return p * x; ...
3 года назад
Тернарный оператор в Carbon
Тернарные операторы обычно используются для возврата значения на основе условий в одном операторе. Это позволяет избежать ненужного объявления переменных и расхода памяти. В Carbon вместо обычных троичных обозначений используются выражения if. Введение Выражение if - это выражение вида: if условие then значение1 else значение2 Условие преобразуется в значение bool так же, как и условие оператора if. Значения value1 и value2 неявно преобразуются к их общему типу, который является типом выражения if...
3 года назад
Если нравится — подпишитесь
Так вы не пропустите новые публикации этого канала