Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/cplusplus/158.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C++ gcov报告未涵盖类别声明_C++_Gcov_Lcov - Fatal编程技术网

C++ gcov报告未涵盖类别声明

C++ gcov报告未涵盖类别声明,c++,gcov,lcov,C++,Gcov,Lcov,我注意到这在我的一些课程中发生 我正在使用lcov生成我的报告: lcov --base-directory . --directory . -c -o foo.info lcov --remove foo.info "/usr*" -o foo.info rm -rf ../cov_report genhtml -o ../cov_report -t "Foo Test Coverage" --num-spaces 4 foo.info 我知道该类正在被使用,因为我可以看到该类方法的覆盖率值

我注意到这在我的一些课程中发生

我正在使用lcov生成我的报告:

lcov --base-directory . --directory . -c -o foo.info
lcov --remove foo.info "/usr*" -o foo.info
rm -rf ../cov_report
genhtml -o ../cov_report -t "Foo Test Coverage" --num-spaces 4 foo.info
我知道该类正在被使用,因为我可以看到该类方法的覆盖率值(参见上面的操作符重载)


我如何才能修复这个问题,以便报告正确的覆盖率数据?

@NeilButterworth是的,这通常是个坏主意,但命名类
Foo
Bar
,或命名数据成员
field1
field2
也是如此。“在这种情况下,这样做可能是有原因的,我高度怀疑这与覆盖率统计数据有关。”尼尔·巴特沃斯谢谢你的建议。正如Daniel H所指出的,这个例子已经经过了大量的消毒处理。我真的只是把这些行作为上下文。它不应该影响覆盖率结果(事实上,我有另一个类,它不是继承层次结构的一部分,并且根本没有具有相同问题的受保护字段或方法)。类声明没有任何覆盖率,因为它不生成任何可执行代码。你到底期望什么?@n.m.我希望它不会报告0,也不会降低我的覆盖率结果。我也有同样的问题。到目前为止,我已经发现GCC版本在这方面发挥了作用,也就是说,在使用GCC 7(或更旧版本)的系统上,一切都是应该的。但是在一个使用GCC 8的系统上,我得到的结果与您得到的结果完全相同。你找到解决这个问题的办法了吗?