Найти в Дзене
Hello, World!

Кортежи в языке Carbon - составные типы

Кортеж в языке Carbon - это набор значений фиксированного размера, которые могут иметь различные типы, где каждое значение идентифицируется по его позиции в кортеже. Примеры кода Объявление переменной типа кортеж: var i: (i32, i32) = (15, 16); Здесь мы объявили i как кортеж из двух 32-битных целых чисел. Объявление переменной типа кортеж с другим типом значения: var i: (i32, f32) = (15, 16.0); Кортеж может иметь различные типы значений. В приведенном выше примере мы определили кортеж из двух значений - 32-битного целого и 32-битного float. Объявление переменной значения кортежа выражений: var i: (i32, i32) = (3 * 5, 4 * 4); Здесь (3*5, 4*4) называется кортежем выражений. Объявление функции, возвращающей кортеж: fn TupleFunc(x: i32, y: i32) -> (i32, i32) {
return (5 * x, 8 * y);
} В этом примере мы создали функцию TupleFunc. Эта функция принимает два 32-битных целочисленных аргумента - x и y. А возвращаемый тип - кортеж из двух 32-битных целых чисел. Функция возвращает кортеж выражени
Оглавление
Кортеж в языке Carbon - это набор значений фиксированного размера, которые могут иметь различные типы, где каждое значение идентифицируется по его позиции в кортеже.

Примеры кода

Объявление переменной типа кортеж:

var i: (i32, i32) = (15, 16);

Здесь мы объявили i как кортеж из двух 32-битных целых чисел.

Объявление переменной типа кортеж с другим типом значения:

var i: (i32, f32) = (15, 16.0);

Кортеж может иметь различные типы значений. В приведенном выше примере мы определили кортеж из двух значений - 32-битного целого и 32-битного float.

Объявление переменной значения кортежа выражений:

var i: (i32, i32) = (3 * 5, 4 * 4);

Здесь (3*5, 4*4) называется кортежем выражений.

Объявление функции, возвращающей кортеж:

fn TupleFunc(x: i32, y: i32) -> (i32, i32) {
return (5 * x, 8 * y);
}

В этом примере мы создали функцию TupleFunc. Эта функция принимает два 32-битных целочисленных аргумента - x и y. А возвращаемый тип - кортеж из двух 32-битных целых чисел.

Функция возвращает кортеж выражений (5 * x, 8 * y).

Как получить доступ к значению кортежа?

Вы можете получить доступ к значению кортежа, используя индекс, начиная с 0 и заканчивая length-1.

Пример:

fn TupleFunc(x: (i32, i32)) -> (i32, i32) {
return (2 * x[0], 2 * x[1]);
}

Здесь наша функция принимает единственный аргумент x, который представляет собой кортеж из двух 32-битных целых чисел. В теле функции мы обращаемся к значениям x, используя x[0] и x[1].