看板Programming
标 题请教C++的this
发信站KKCITY (Thu Nov 2 21:05:55 2006)
转信站ptt!ctu-reader!Spring!news.nctu!news.ntu!news.au!zoonews.ee.ntu!news.k
#include <iostream>
#include <cstdlib>
using namespace std;
class work
{
public:
int Id;
char name[20];
work() {
Id = 0;
strcpy(name, "ZZZ"); //指定name初值
}
void output() {
cout << this->Id << endl;
cout << (*this).Id << endl;
}
};
int main(void)
{
work work1;
work1.Id=5;
//work1.name="quota123";
work1.output();
system("pause");
return 0;
}
请教一下 以上程式的
this->Id 与(*this).Id 我在网路上看到陈老师的网页 他是这样说明:
「this」指标代表目前这个物件的指标;
「*this」则代表目前这个物件的内容
可是.为何我这里得到的答案都是5呢?
另外我想问.. strcpy这一行程式是我看到范例原本就有的
可是 如果我想要给他资料
比如work1.name="quota123";
却会出现错误
请问..work class内的这个成员 我该如何使用呢?
谢谢
--
┌─────◆KKCITY◆─────┐ ■ KKBOX 可立刻 听音乐 ■
│ bbs.kkcity.com.tw │ ■■所有想找的歌通通不必等 ■■
└──《From:210.208.147.233
》──┘ ■■■http://www.kkbox.com.tw■■■
--