Một phương thức của lớp có thể được gọi bằng con trỏ lớp NULL.
Lưu ý - Đây là hành vi chưa định nghĩa (undefined behaviour) và không có đảm bảo về việc thực thi chương trình. Kết quả thực tế phụ thuộc vào trình biên dịch được sử dụng.
Chương trình dưới đây minh họa điều này.
Ví dụ
#include <iostream>
using namespace std;
class Example {
public:
void func() {
cout << "Hàm được gọi qua con trỏ lớp Null.";
}
};
int main() {
Example *p = NULL;
p->func();
return 0;
}
Kết quả
Hàm được gọi qua con trỏ lớp Null.
Hãy hiểu chương trình trên.
Lớp Example chứa hàm thành viên func(). Hàm này hiển thị "Hàm được gọi qua con trỏ lớp Null."
class Example {
public:
void func() {
cout << "Hàm được gọi qua con trỏ lớp Null.";
}
};
Trong hàm main(), con trỏ lớp null p được tạo. Sau đó func() được gọi bằng p.
int main() {
Example *p = NULL;
p->func();
return 0;
}