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

Указатели в языке Carbon

Указатели в языке Carbon аналогичны языку C++. Тип указателей на значения типа P записывается как P*. Указатели Carbon не поддерживают арифметику указателей. Какие операции поддерживаются указателями в Carbon? Указатели Carbon поддерживают разыменование и адресацию. Примечание: В Carbon не существует нулевых указателей. Для представления указателя, который может не ссылаться на действительный объект, используйте тип Optional(P*). Пример: var p: i32 = 45;
var pp: auto = *p;
var ppp: auto = &pp;
Указатели в языке Carbon аналогичны языку C++. Тип указателей на значения типа P записывается как P*. Указатели Carbon не поддерживают арифметику указателей.

Какие операции поддерживаются указателями в Carbon?

Указатели Carbon поддерживают разыменование и адресацию.

  • Разыменование - если дан указатель p, *p выдает значение, на которое указывает p, как l-значение. p->m то же самое, что (*p).m.
  • Адресация - если дано l-значение x, &x возвращает указатель на x.

Примечание: В Carbon не существует нулевых указателей. Для представления указателя, который может не ссылаться на действительный объект, используйте тип Optional(P*).

Пример:

var p: i32 = 45;
var pp: auto = *p;
var ppp: auto = &pp;