一个类的静态函数调用另外一个类的非静态函数

A的静态函数调用B的非静态函数

A.h

class A {
public:

	static void getA();

};

A.cpp

#include "A.h"
#include "B.h"
void A::getA() {
	B::getInstace()->getB();
}

B.h

class B {
public:
	static B* getInstace();

	void getB();


private:
	static B* instace;
};

B.cpp

#include "B.h"
#include "stdio.h"
B* B::instace = nullptr;

void B::getB() {
	printf("11111111111111111");
}

B* B::getInstace() {
	if (instace == nullptr) {
		instace = new B;
	}

	return instace;
}

main.cpp

#include 
#include "A.h"

int main()
{
	A::getA();
}

你可能感兴趣的:(c++)