问题遇到的现象和发生背景
如何测试类的私有成员函数
遇到的现象和发生背景,请写出第一个错误信息
如何测试类的私有成员函数
用代码块功能插入代码,请勿粘贴截图。 不用代码块回答率下降 50%
base.h的内容
class Base
{
public:
virtual void run(void) = 0;
static Base& instance(void);
};
a.cpp的内容
#include "base.h"
class A : public Base
{
public:
virtual void run(void)
{
std::cout << "A.run() called." << std::endl;
f1();
f2();
}
private:
void f1(void)
{
}
void f2(void)
{
}
};
Base& Base::instance(void)
{
static A sa;
return sa;
}
现在,我如何测试A.f1, A.f2 ?
运行结果及详细报错内容
如何测试A.f1, A.f2 ?
我的解答思路和尝试过的方法,不写自己思路的,回答率下降 60%
把f1,f2定义成A的Public方法,且增加头文件a.h
class A : public Base
{
public:
virtual void run(void);
void f1(void);
void f2(void);
};
然后在a.cpp中写实现,但这样原本封装在A的实现中的f1,f2暴露了。