Ошибка в конструкторе класса manejo.cpp, ошибка "manejo.cpp: 3: 16: error: array используется как инициализатор", и я не знаю, где эта ошибка.
к down прилагается исходный код класса manejo.hpp и реализация manejo.cpp, спасибо
#include "manejo.hpp"
manejo::manejo(){}
manejo::~manejo(){}
Hpp
#ifndef __MANEJO_HPP
#define _MANEJO_HPP
#include <iostream>
#include <fstream>
#include <vector>
#include <string>
using namespace std;
using std::vector;
using std::string;
class manejo{
private:
char cadena[128]="";
vector <string> linea;
long cantidadPD = 0;
vector <string> palabras;
int Creglas = 0;
vector <string> reglas;
long atoi(const char *str);
public:
manejo();
~manejo();
void EstablecerVariables();
int StoInt (string numero);
};
#endif
Эта
char cadena[128]="";
не является законным в традиционном C++ (это законно в C++ 11, но, очевидно, вы не используете его, потому что иначе вы не получите эту ошибку). Delete =""
, инициализировать элементы данных в вашем конструкторе, а не в вашем классе. Например
manejo::manejo()
{
cadena[0] = '\0';
...
}