Я создал эту программу, и по какой-то причине Visual Studio предоставляет это «предупреждение» («неожиданные токены после директивы препроцессора - ожидается новая строка»), в то же время обнаруживая ошибки, которые кажутся чтобы ссылаться на содержимое в одной строке вниз от строки, которую компилятор утверждает, что они включены. Для момента времени ошибка Carat Error, похоже, относится только к чему-то применимому one line down. Таким образом, я считаю, что-то должно быть, пошло ужасно неправильно в заголовке программы, но я unsure.Here это код:«неожиданные токены после директивы препроцессора - ожидаемая новая строка»
//1/4/2017
#include "stdafx.h"
#include <iostream>
#include <vector>
#include <string>
#include <ctime>
#include <cstdlib>
using namespace std;
void getNewItem();
void displayItems();
void displayRand();
vector<string> vecItems;
int main()
{
//declaration phase
int intInput;
string strNewItem;
cout << "Random Item Generator" << endl << "Written by #XXXXX" << endl << "1. Add Item" << endl << "2. Display All Items " << endl << "3. Display Random Item" << endl << "4. Quit" << endl;
while (intInput != 4)
{
cin >> intInput;
switch (intInput)
{
case 1:
getNewItem();
break;
case 2:
displayItems();
break;
case 3:
displayRand();
break;
}
}
return 0;
}
void getNewItem() {
string strNewItem;
cin >> strNewItem;
vecItems.push_back(strNewItem);
}
void displayItems() {
for (int i = 0; i < vecItems.size(); i++) {
cout << vecItems.at(i) << endl;
}
}
void displayRand() {
int intRandIndex;
//random number generator
srand((unsigned)time(0));
intRandIndex = rand() % 10;
cout << vecItems.at(intRandIndex) << endl;
}
Скриншот 1
Скриншот 2
EDIT: версия Visual Studio - это Visual Studio 2015, и я перекомпилирован и полностью запущен новые проекты безрезультатно.
Образца дано не воспроизвести эту ошибку с Визуальным Studio 2015 или Visual Studio 2010. Какую версию Visual Studio вы используете? Вы уверены, что это пример, который вы хотели дать? –
Я использую Visual Studio 15 и перекомпилировал программу и переделал ее с нуля только для получения той же проблемы:/ – DesPhantomes
Возможно, проблема заключается в вашем предварительно скомпилированном заголовке. Мне пришлось исключить строку '#include" stdafx.h "для компиляции (у меня нет этого заголовка). –