return *this的使用, 怎么改呢?
西兹兹 2005-08-26 07:25:09 #include<stdio.h>
#include<stdlib.h>
#include<iostream>
#include<string>
#include<conio.h>
#include<vector>
#include<utility> // pair 类
#include<cstddef> // sizeof
#include<list>//list类
#include<memory> // anto_pr,自动new,delete
#include<algorithm>// copy()泛型算法
#include<iterator> //
using namespace std;
class Screen{
public:
Screen(int height = 1,int width =2);
Screen& output1() const;
void output2() const;
private:
int _h, _w;
};//每个类的成员函数都含有一个指向被调用对象的指针,即是this,类的不同对象有不同的指针
int main()
{
Screen *p = new Screen;
p->output1().output2();
getch();
return 0;
}
Screen::Screen(int height ,int width)
{
this->_h = height;
(*this)._w= width;
}
Screen& Screen::output1() const
{
cout<<"output1:"<<endl
<<_h<<endl
<<_w<<endl;
return *this;
}
void Screen::output2() const
{
cout<<"output1:"<<endl
<<_h<<endl
<<_w<<endl;
}