在 C++ 中通过空指针调用成员函数


可以使用空指针调用类成员函数。

注意 这是未定义的行为,不保证程序执行。实际结果取决于所使用的编译器。

演示此示例的程序如下。

示例

 在线示例

#include <iostream>
using namespace std;
class Demo {
   public :
   void fun() {
      cout << "This member function is called through Null object pointer.";
   }
};
int main() {
   Demo *ptr = NULL;
   ptr->fun();
   return 0;
}

输出

以上程序的输出如下。

This member function is called through Null object pointer.

现在,让我们了解一下这个程序。

Demo 类包含成员函数 fun()。此函数显示“此成员函数通过空指针调用。”它的代码片段如下所示。

class Demo {
   public :
   void fun() {
      cout << "This member function is called through Null object pointer.";
   }
};

在主函数中,创建对象空指针 ptr。然后使用 ptr 调用成员函数 fun()。它的代码片段如下所示。

int main() {
   Demo *ptr = NULL;
   ptr->fun();
   return 0;
}

更新时间:2020-06-26

909 次浏览

开启你的 职业生涯

完成本课程即可获得认证

开始吧
广告