gpt4 book ai didi

c - GoogleTest 在特定测试中强制 #undef

转载 作者:行者123 更新时间:2023-11-30 20:46:38 24 4
gpt4 key购买 nike

我使用GoogleTest,我想测试一些带有#ifndef的函数。

文件 a.c

bool myFunction() {
#ifndef FOO
return true;
#else
return false;
#endif
}

是否可以在特定测试期间强制使用#undef?这样我就可以在 2 个统计数据中测试该函数(有定义和没有定义)。

最佳答案

这就是人们试图避免使用使用 #define#if 等创建的函数的多个版本的原因之一。很难测试所有这些不同的版本。

如果您想测试这两个版本,则必须编译您的程序两次(一次使用 #define FOO,一次不使用),然后分别运行测试。如所写,更改 FOO 值的唯一方法是重新编译程序。

或者,您可以重构代码,这样就不需要 #define 了。

关于c - GoogleTest 在特定测试中强制 #undef,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52428265/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com