下面是我当前正在使用的代码的摘录(其余的与我的问题无关。我在使用 Information combineInfo(information a1) 成员函数时遇到问题。我收到一个错误,它没有在范围内声明。所有我想做的是结合信息并设置新变量。我能够使用结构成功地做到这一点,现在我是自学班。
#include <iostream>
#include <string>
using namespace std;
struct Date
{
int month;
int day;
int year;
};
class Information
{
public:
Information();
void printinformation();
Information combineInfo(Information a1);
//Setters and Getters Here
private:
string a;
double b;
double c;
Date d;
Date e;
};
void initializeDate(Date& d);
void printDate(Date& d);
int main()
{
cout << endl << "Now please input Information #1" << endl;
Information a1; // prompts for all the inputs for a1
cout << endl << "Now please input Information #2" << endl;
Information a2; // prompts for all the inputs for a2
a2.combineInfo(a1); // again prompts for info??
cout << "The combined Information is: " << endl;
info.printinformation();
return 0;
}
Information::Information()
{
string a;
cout << "Please enter a"<<endl;
getline(cin, a);
cout <<"Please enter b?"<<endl;
cin >> b;
getline(cin, dummy);
cout <<"Please enter c?"<<endl;
cin >> c;
getline(cin, dummy);
cout << "Please input the info start dates."<< endl;
initializeDate(start);
cout << "Please input the info end dates."<< endl;
initializeDate(finish);
}
Information Information::combineInfo(Information a1)
{
Information a1;
Information a2;
Information info;
a1.a = a2.a;
//etc.
return info;
}