Как исправить «ожидаемый безусловный идентификатор перед строковой константой», даже если я ничего не #define или пропускаю точку с запятой? - PullRequest
0 голосов
/ 22 марта 2019

Проблема

Я получаю сообщение об ошибке «ожидаемый неквалифицированный идентификатор перед строковой константой», однако я не пропускаю ни точку с запятой, ни что-то неправильно определяю. На самом деле, я даже не использую # define.

Сообщение об ошибке перестанет появляться только тогда, когда я уменьшу количество строк, вводимых в массив.

Мой код

#include <iostream>
#include <string>
using namespace std;

int main(){
    int score, res=0;
    string names[]="MARY", ... ,"ALONSO";
    return 0;
}

Все строки, которые я ввожу, можно найти здесь

Ответы [ 2 ]

2 голосов
/ 22 марта 2019

Вам необходимо заключить строковые литералы в фигурные скобки:

const string names[] = {"MARY", "ALONSO"};
2 голосов
/ 22 марта 2019

Вы инициализируете массив, заключая данные в фигурные скобки {}:

string names[]={"MARY", ... ,"ALONSO"};
...