строка не распознана? C4430: отсутствует спецификатор типа — предполагается int

#c #visual-studio-2010

#c

Вопрос:

Я определил этот класс, но он вообще не работает.

 #ifndef LIBROS_H
#define LIBROS_H
#include "Articulo.h"
class Libros: public Articulo
{
public:
Libros();
~Libros();
string Autor;
string Editorial;
void mostrar();
void llenar();
};
# endif
  

это дает:
ошибка
C4430: отсутствует спецификатор типа — предполагается int. Примечание: C не поддерживает default-int

Ответ №1:

Вы забыли #include указать правильный заголовок.

 #include <string>
  

И поскольку у вас нет using оператора, вам нужно указать ваше strings пространство имен, в котором они находятся, а именно std :

 std::string Autor;
std::string Editorial;
  

Ответ №2:

Две вещи:

#include <string>

и строка находится в std пространстве имен. Вам нужно будет использовать std::string вместо string .

Ответ №3:

Вы должны включить string заголовок, и вы должны либо добавить префикс string в пространство std имен, либо использовать using namespace std;

 #ifndef LIBROS_H
#define LIBROS_H

#include <string>
#include "Articulo.h"

class Libros: public Articulo
{
public:
    Libros();
    ~Libros();
    std::string Autor;
    std::string Editorial;
    void mostrar();
    void llenar();
};

# endif
  

Комментарии:

1. спасибо вам всем! моей ошибкой было включение в класс отца = S, который я пропускаю, пока не прочитаю все это в третий раз