很抱歉可怕的格式化但我只是想知道以下是否会被视为访问者。
所以我的班级定义看起来像这样......
class work {
public:
void getInput(); //Mutator
void output(); //Accessor?
//...
所以这是函数..
void work::output()
{
dayofweek = day + getMonthvalue(month, year) + ....;
final = dayofweek % 7;
if(final == 0)
cout << "The day of the date is Sunday\n";
else if(final == 1)
cout << "The day of the date is Monday\n";
else if(final == 2)
cout << "The day of the date is Tuesday\n";
/*.
.
.*/
else {
cout << "The day of the day is Saturday\n";
}
}
答案 0 :(得分:2)
您显示为output
的内容通常会被写为inserter
:
class work {
// ...
friend std::ostream &operator<<(std::ostream &os, work const &w) {
static char const *names[] = {
"Sunday", "Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday"
};
return os << names[getDayOfWeek(w)];
}
};
为了清楚起见:inserter
的名称源于它将某种类型的项目插入流中。镜像(从流中获取某种类型的项目)是extractor
。
如果你真的坚持正确的代码名称,那么我自己的立场是mistake
(强制输出到cout
会失去灵活性,使用{{ 1}}梯子使代码变得丑陋和笨拙。
答案 1 :(得分:1)
一些术语
由此不,不是真的。 Accessor源于访问。