C++类方法调用

在C++类内部方法调用时,一般都是先去定义一个类的变量,实例化之后再通过类对象去调用类内部的函数。在项目中发现另一种比较方便的方法,不需要定义类对象,话不多说直接上代码。

实例代码如下:

#include <iostream>
using namespace std;

class A{
public:
    A(int iNum){ i = iNum; }
    void    readName(){cout<<"i = "<<i<<endl;}
private:
    int i;
	
public:
    static A*	_obj(){ return _object; }
    static void	_InitObj();
    static void	_FreeObj();
    void    read_it(){cout<<"it = "<<it<<endl;}
	
private:
    static A* _object;
    static int it;
};

void A::_InitObj()
{
    A::_object = new A(4);
}

void A::_FreeObj()
{
    if(A::_object != NULL)
    {
	delete _object;
	A::_object = NULL;
    }
}

A* A::_object = NULL;
int A::it = 9;

int main()
{
    A::_InitObj();
	
    A::_obj()->readName();
    A::_obj()->read_it();
	
    A::_FreeObj();
	
    return 0;
}

上述代码执行结果:

通过上述代码可以清楚的知道,通过在类内部定义静态变量向外部类提供相应的接口去调用类的内部方法,该办法确实非常实用。


版权声明:本文为ddazz0621原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。