我创建了一个名为Login_Class的类和该类的头文件。从main方法我调用一个在Login_Class中的函数。我的问题是,我得到2个错误,这些错误不让我编译这个简单的程序。由于我是c ++的新手,我不熟悉这些错误。
这是我的登录类实现
#include<iostream>
#include<stdio.h>
#include "stdafx.h"
#include <string>
#include "Login_Class.h"
using namespace std;
string checkUserType(string userType)
{
if(userType=="Admin")
{
return "Administrator";
}
if(userType=="HR")
{
return "HR";
}
if(userType=="staff")
{
return "staff";
}
}
这是Login_Class的头文件
#include "stdafx.h"
#include <string>
#ifndef Login_Class_h
#define Login_Class_h
using namespace std;
class Login_Class
{
public:
string checkUserType(string userType);
};
#endif
这是我的主要方法代码
#include "stdafx.h"
#include"Login_Class.h"
#include <string>
#include <iostream>
using namespace std;
int main(){
Login_Class log;
string name=log.checkUserType("Admin"); //calling the function in the login_Class
cout<<name<<endl;
}
以下是我得到的错误
我在这里做错了什么?
感谢您的时间。
答案 0 :(得分:2)
您是否尝试过更改:
string checkUserType(string userType)
到
string Login_Class::checkUserType(string userType)
答案 1 :(得分:0)
我认为include guards
会有所帮助。在头文件中创建follownig预处理器块:
#ifndef _H_LOGIN_CLASS
#define _H_LOGIN_CLASS
////yourcode...
#endif
包含防护措施可防止在比赛期间多次读取同一文件。并且还提高了编译速度。