C ++静态成员,我该如何测试它
c++ static member, how do I test it
我在foo.h中有一个包含静态成员的类
class foo {
public:
static vector<int> a;
static void Init() { // Init a }
}
一切正常,直到我有一个测试文件foo_test.cpp这是测试类 foo。但在测试文件,静态成员 A 不可见,因为静态成员仅可见...我该如何解决这个问题?
谢谢
您需要定义a
,在cpp
文件中添加如下行:
vector<int> foo::a;
编辑:更改了数据类型以反映问题中的编辑
如果在作用域外调用 foo::Init(),将得到函数重新声明错误。如果将其放在示波器内,将获得未解析的外部符号。您只能将其初始化为 int foo::a = 0;
相关文章:
- 使用谷歌测试进行测试时出现分段错误
- 使用cmake构建google测试单元测试时出现链接器错误
- 单元测试不测试什么?
- 如何使用Boost单元测试框架测试Qt应用程序
- C++ / GoogleTest - 如何测试正在测试的类的成员变量
- 在单元测试中测试连接丢失(在节俭的C++应用程序中或一般情况下)
- C++升压测试无法测试操作员<
- 谷歌测试:如果测试失败,则执行其他操作
- 为什么我的所有测试方法都没有显示在VS2008中单元测试的测试列表中?
- googletest:死亡测试:单个测试中的多个期望
- 从谷歌测试框架中的另一个测试执行测试
- Google 测试框架 - 测试用例之间的依赖关系
- 如何使用C++11为x86(-64)安全地编写测试和测试集(TATAS)自旋锁
- 如何用谷歌测试模拟测试中的类中的方法
- 谷歌测试继续测试
- 如何在谷歌测试中测试方法,使用std::function
- 我们应该在C++单元测试中测试src代码断言(NOT异常)吗
- 使用 Qt 进行单元测试:更改测试函数中使用的标准路径
- MFC gui可通过谷歌测试进行测试
- 如何使用Google测试框架测试共享库