Я использую Cygwin с GCC, и в конечном счете я хочу читать в файле символов в вектор символов, и использующий этот код
#include <fstream>
#include <vector>
#include <stdlib.h>
using namespace std;
int main (int argc, char *argv[] )
{
vector<char> string1();
string1.push_back('a');
return 0;
}
генерирует эту ошибку времени компиляции:
main.cpp: В функции
int main(int, char**)': main.cpp:46: error: request for member
push_back' вstring1', which is of non -class type
станд.:: вектор> () ()'
Я попробовал это вектором ints и строк также, и у них была та же проблема.
Не используйте круглые скобки для вызова конструктора по умолчанию:
vector<char> string1;
В противном случае это объявляет функцию string1
, который не принимает аргументов и возвращает вектор
.
Уберите парены в объявлении вектора
- они приводят к тому, что это объявление функции, а не вектора.