[英]C++ Protected member access
需要一个受保护的类来访问月日年,我了解您需要从继承的类中创建一个类,而不是在main中调用受保护的数据
#include <iostream>
#include <fstream>
using namespace std;
class dateType
{
public:
dateType();
dateType(int, int, int);
void setDate(int, int, int);
void printDate(ostream&)const;
protected:
int month;
int day;
int year;
};
ostream& operator<<(ostream &os, const dateType &d) {
os << d.month << "/" << d.day << "/" << d.year;
files
return os;
}
当执行此代码时,我收到一条错误消息,指出月,日和年受保护
与好友运算符<<一起编码。
#include <iostream>
#include <fstream>
using namespace std;
class dateType
{
public:
dateType();
dateType(int, int, int);
void setDate(int, int, int);
void printDate(ostream&)const;
friend ostream& operator<<(ostream &os, const dateType &d) {
os << d.month << "/" << d.day << "/" << d.year;
return os;
}
protected:
int month;
int day;
int year;
};
您的方法应该是这样的朋友:
friend ostream& operator<<(ostream &os, const dateType &d)
{
os << d.getMonth() << "/" << d.getDay() << "/" << d.getYear();
return os;
}
在您的课程实施中
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.