专栏名称: everystep
记忆是思考的灰烬
今天看啥  ›  专栏  ›  everystep

震惊!原来 this 指针根本不在对象里面?

everystep  · 公众号  ·  · 2024-11-18 07:00

文章预览

想象一下,如果你是一个对象,你怎么知道"我是谁"? 🤔 在 C++ 中,每个对象都有一种神奇的"自我意识",这就是通过 this 指针实现的。让我们通过一个有趣的例子来揭开它的神秘面纱~ this 指针是什么? 🔍 想象一下,在一个热闹的猫咪派对上... 🎉 class   Cat  { public :     Cat( string  catName) : name(catName) {}           void   sayHi ()   {          // 每只猫都知道自己的名字!          cout   < "喵~ 我是"  name  < "!"      }           void   playWith (Cat &   friend )   {          // this->name 就是"我"的名字          // friend.name 是朋友的名字          cout   name  < "正在和"                < "玩毛线球 🧶"      } private :      string  name; }; int   main ()   {      Cat  kitty ( "小花" ) ;     // 一只名叫小花的猫      Cat  buddy ( "小黑" ………………………………

原文地址:访问原文地址
快照地址: 访问文章快照
总结与预览地址:访问总结与预览