C++ 级联成员函数调用
// fig21_20.cpp : 定义控制台应用程序的入口点。
//
#include "stdafx.h"
#include <iostream>
using std::cout;
using std::cin;
class Time
{
public:
// 构造函数
Time(int h = 0, int m = 0, int s = 0)
{
hour = h;
minute = m;
second = s;
}
Time& setHour(int h) // 成员函数返回*this , 返回类型为什么不可直接用Time,而是Time & 来支持级联成员?
{
hour = h;
return *this;
}
Time& setMinute(int m)
{
minute = m;
return *this;
}
Time& setSecond(int s)
{
second = s;
return *this;
}
void displayTime()
{
cout << hour << ":" << minute << ":" << second;
}
private:
int hour;
int minute;
int second;
};
int _tmain(int argc, _TCHAR* argv[])
{
Time t;
t.setHour( 10 ).setMinute( 20 ).setSecond( 55 ); // 级联成员函数调用
t.displayTime();
getchar();
return 0;
}