I have a class, lets say CAppPath
which has a static method:
public: static CString GetAppPath();
and in CAppPath.cpp
it's defined as:
CString CAppPath::GetAppPath() { return "C:\..\MypAth"; }
Now I have another class CXMLHandler
, and I have included CAppPath.h
in it. But how do I call the GetAppPath()
method? I've tried:
#include "CAppPath.h" void CXMLHandler::MyMethod { CNDSClientDlg->GetAppPath(); }
but it doesn't work. How should I access this method? Since it is a static method, do I need to create a object of the class or should I make the class itself static?
Calling Static FunctionIt is invoked by using the class name. For example: Math. sqrt(a); //calling the square root function of the Math class.
By declaring a function member as static, you make it independent of any particular object of the class. A static member function can be called even if no objects of the class exist and the static functions are accessed using only the class name and the scope resolution operator ::.
You only need to use the scope resolution operator ::
to qualify the method with the name of the class that exposes it:
CString appPath = CAppPath::GetAppPath();
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With