#ifndef LibraryUser_h
#define LibraryUser_h
#include <string>
using namespace std;
class LibraryUser {
private:
std::string name;
std::string email;
int idnumber;
public:
LibraryUser(string name, string email, int idnumber);
LibraryUser();
void addnewuser();
string getName();
string getEmail();
int getIdnumber();
void setName(string name);
void setEmail(string email);
void setIdnumber(int idnumber);
};
#endif
我的cpp
#include "LibraryUser.h"
#include <string>
#include <iostream>
using namespace std;
LibraryUser(string name, string email, int idnumber) {
this->name = name;
this->email = email;
this->idnumber = idnumber;
};
void setName(string name) {
name = name;
}
void setEmail(string email) {
email = email;
}
void setIdnumber(int idnumber) {
idnumber = idnumber;
}
void addnewuser() {
string objectname;
cout << "Enter name of object.";
cin >> objectname;
cout << "Enter the name of the user you would like to add:";
cin >> name;
cout << "Enter the email for the user.";
cin >> email;
cout << "Enter the idnumber for the user: ";
cin >> idnumber;
LibraryUser objectname(name, email, idnumber);
}
我遇到了一堆错误,即使在人工智能的帮助下,我也很难修复它。
我正在尝试使用用户输入来创建对象,但由于这是我第一次使用头文件,因此我遇到了一些问题。我收到的错误预计会出现在 cpp 文件中第五个名称之前的“)”,然后 makenewuser 函数中使用的所有变量都不会收到未声明的错误,即使构造函数初始化了所有变量。
在您的
.cpp
文件中,您需要提供您正在定义的函数的完全限定名称。例如,您的构造函数定义需要是:
LibraryUser::LibraryUser(string name, string email, int idnumber) {
this->name = name;
this->email = email;
this->idnumber = idnumber;
}
其他成员函数也是如此,如
void LibraryUser::setName(string name) {
name = name;
}
等等