## 指针（二）

(*pRags).GetAge();

pRags->GetAge(); #include <iostream> using namespace std;  class SimpleCat  { public: SimpleCat(); ~SimpleCat();   int GetAge() const {return *itsAge;}  void SetAge(int age) {*itsAge = age;}   int GetWeight() const {return *itsWeight;}  void SetWeight(int weight) {*itsWeight = weight;}  private: int *itsAge; int *itsWeight; }
;   SimpleCat::SimpleCat()
{ itsAge
= new int(2); itsWeight
= new int(5); }   SimpleCat::
~SimpleCat() { delete itsAge; delete itsWeight; }  int main(int argc, char *argv[])  { SimpleCat
* Frisky = new SimpleCat; cout
<< "Frisky is " << Frisky->GetAge() << " years old\n"; Frisky
->SetAge(5); cout
<< "Frisky is " << Frisky->GetAge() << " years old\n"; delete Frisky;  return 0; } this 指针，例子： #include <iostream> using namespace std;  // 例子：使用 this 指针 class Rectangle  { public: Rectangle(); ~Rectangle();  void SetLength(int length) {this->itsLength = length;}  int GetLength() const {return this->itsLength;}   void SetWidth(int width) {this->itsWidth = width;}  int GetWidth() const {return this->itsWidth;}  private: int itsLength; int itsWidth; }
;  // 注意这个构造函数语法！ Rectangle::Rectangle(): itsWidth(
5), itsLength(
10)  { }   Rectangle::
~Rectangle() {}  int main(int argc, char *argv[])  { Rectangle theRect; cout
<< "theRect is " << theRect.GetLength() << " feet long.\n"; cout
<< "theRect is " << theRect.GetWidth() << " feet wide.\n"; theRect.SetLength(
20); theRect.SetWidth(
10); cout
<< "theRect is " << theRect.GetLength() << " feet long.\n"; cout
<< "theRect is " << theRect.GetWidth() << " feet wide.\n";  return 0; } posted on 2005-04-26 00:36 NeilChen 阅读(...) 评论(...) 编辑 收藏

• 随笔 - 377
• 文章 - 46
• 评论 - 2002
• 引用 - 39