Я не вижу, что не так в следующем (очень надуманном) коде. Возможно, я объявил вектор размера 2 внутри mystruct
. Но не так ли мы объявляем вектор размера 2, содержимое которого нам еще предстоит инициализировать?
struct mystruct
{
int a;
int b;
vector<double> c(2); };
int main(int argc, char *argv[])
{
mystruct test;
(test.c)[0]=3.4;
(test.c)[1]=1.8;
return 0; }
Компилятор выдает мне следующее сообщение об ошибке:
g ++ -Wall simple.cpp
simple.cpp: 18: ошибка: ожидаемый идентификатор перед числовой константой
simple.cpp: 18: ошибка: ожидается ‘,’ или ‘...’ перед числовой константой
simple.cpp: в функции int main (int, char **) ’:
simple.cpp: 32: ошибка: недопустимые типы ‘[int]’ для массива
подстрочный
simple.cpp: 33: ошибка: недопустимые типы ‘[int]’ для индекса массива