Так что я могу иметь
struct { int x []int }
Тем не менее,
struct { int []int }
приведет к syntax error: unexpected [, expecting }. Есть ли способ иметь неназванные массивы в структурах в Go? Если так, какой правильный синтаксис?
syntax error: unexpected [, expecting }
Чтение Спецификация языка программирования Go .В частности, раздел Типы конструкций .Термин Go для описания того, что вы ищете, является анонимным полем.
Такой тип поля [n] [анонимный] должен быть указан как имя типа T или как указатель на имя типа* T, а сам T не может быть указателем типа.
int - это имя типа .[]int не является ни именем типа, ни указателем на имя типа.
int
[]int
Нет, тип анонимного поля должен быть именем типа или указателем на имя типа. Вы можете объявить новое имя типа, совпадающее с типом массива, и тогда оно будет работать, но оно не будет точно таким же.