【问题标题】:Class Header , string does not name a type类头,字符串不命名类型
【发布时间】:2015-09-12 01:43:39
【问题描述】:

您好,我正在努力完成我的作业。当我尝试分离一个类时出现编译错误,然后再调用它。但是整个测试功能可以正常工作。它在整个文本中都有类。基本上,当我尝试将课程与文本分开时,我会收到一条错误消息。

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

class Person
{
private:
 string alpha;
int beta;

public:
Person(string Name, int Age)
{
    alpha = Name;
    beta = Age;
}
string getName()
{
    return alpha;
}
int getAge()
{
    if (beta < 0)
    {   beta = 0;
        cout << "Error. A negative age cannot be entered. " << endl;
        }
    if (beta > 120)
    {
        cout << "Damn you're old. How many heart transplants have you had? You Vampire " << endl;
    }
    return beta;
}
void setName(string alpha)
{

}
void setAge(int beta);
void display();

};

int main()
{


Person Lu("Jess ", 22);
Person Rose("Gary ", 49);
cout << Lu.getAge() << "   " << Lu.getName() <<endl;
cout << Rose.getAge() << "   " << Rose.getName() << endl;
return 0;
}`

但是当我把班级分开时,:

#include <iostream>
#include <string>

class Person
{
private:
   string alpha;
  int beta;

public:
    Person(string Name, int Age)
{
    alpha = Name;
    beta = Age;
}
string getName()
{
    return alpha;
}
int getAge()
{
    if (beta < 0)
    {   beta = 0;
        cout << "Error. A negative age cannot be entered. " << endl;
        }
    if (beta > 120)
    {
        cout << "Damn you're old. How many heart transplants have you had? You Vampire " << endl;
    }
    return beta;
}
void setName(string alpha)
{

}
void setAge(int beta);
void display();

};

主文件

#include <iostream>
#include "Person.h"
#include <string>
using namespace std;


int main()
{

Person Lu("Jess ", 22);
cout << Lu.getAge() << "   " << Lu.getName() <<endl;

    return 0;
}`

但是当我分离类时,我在代码块中遇到错误。请帮忙。

【问题讨论】:

  • 错误信息是什么?
  • 第 7 行错误:'string' 没有命名类型
  • 您应该将其编辑到您的问题中。
  • 我不认为这是真正的错误,因为它是在 2 个文件放在一起时编译的。

标签: c++ class header


【解决方案1】:

您忘记在 Person.h 中输入 using namespace std;

此外,您在 Person.h 上没有任何标题保护,这在这样一个简单的程序中不会导致问题,但只要多个文件包含 Person.h,就会出现问题。

【讨论】:

猜你喜欢
  • 1970-01-01
  • 2012-07-11
  • 1970-01-01
  • 2019-11-21
  • 1970-01-01
  • 2011-06-21
  • 2019-02-27
  • 1970-01-01
  • 2020-09-19
相关资源
最近更新 更多