Безымянные массивы в структурах в Go - PullRequest
0 голосов
/ 28 июня 2010

Так что я могу иметь

struct {
    int
    x []int
}

Тем не менее,

struct {
    int
    []int
}

приведет к syntax error: unexpected [, expecting }. Есть ли способ иметь неназванные массивы в структурах в Go? Если так, какой правильный синтаксис?

Ответы [ 2 ]

2 голосов
/ 28 июня 2010

Чтение Спецификация языка программирования Go .В частности, раздел Типы конструкций .Термин Go для описания того, что вы ищете, является анонимным полем.

Такой тип поля [n] [анонимный] должен быть указан как имя типа T или как указатель на имя типа* T, а сам T не может быть указателем типа.

int - это имя типа .[]int не является ни именем типа, ни указателем на имя типа.

0 голосов
/ 28 июня 2010

Нет, тип анонимного поля должен быть именем типа или указателем на имя типа. Вы можете объявить новое имя типа, совпадающее с типом массива, и тогда оно будет работать, но оно не будет точно таким же.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...