Monday, July 7, 2008

Access a Class Member Function Without Creating a Class Object

--------------------------------------------------------------------------------

In some cases, it is possible to call a class member function without creating the class object.
In the following example, the program will print "hello world" although class A has never been created. When the program enters the "PrintMe" function, the "this" pointer is zero. This is fine as long as you don't access data members through the "this" pointer.


Code: CPP
#include
class A {
public:
void PrintMe();
};


void A::PrintMe()
{
printf("Hello World\n");
}

void main()
{
A* p = 0;
p->PrintMe();

}

No comments: