我正在尝试访问在我使用的库(ogdf)的类中定义的枚举。
用于库中枚举定义的See line 65 here。
如果我尝试这样访问它(我认为这是正确的方式):
ogdf::StressMinimization::TERMINATION_CRITERION::POSITION_DIFFERENCE我得到以下错误:
error: ‘ogdf::StressMinimization::TERMINATION_CRITERION’ has not been declared如果我试着这样做:
ogdf::StressMinimization::POSITION_DIFFERENCE我得到了这个错误:
error: ‘POSITION_DIFFERENCE’ is not a member of ‘ogdf::StressMinimization’当然,我通过以下方式将头文件包含在.cpp文件中:
#include <ogdf/energybased/StressMinimization.h>因为这是ogdf库的一部分,所以循环包含没有问题,这似乎是导致循环包含的最常见问题。
我不明白为什么会发生这样的事情,任何帮助都非常感谢!如果您需要任何进一步的细节,请让我知道,我会更新问题。
发布于 2017-07-19 10:12:44
假设您使用的是最新版本,可能是枚举的名称已更改,文档已过时;看起来文档来自2015年,最新快照(目前)来自2017年2月。在https://github.com/ogdf/ogdf/blob/master/include/ogdf/energybased/StressMinimization.h中,枚举现在看起来像这样:
enum class TerminationCriterion {
None, PositionDifference, Stress
};因此,尝试用TerminationCriterion替换TERMINATION_CRITERION和/或用PositionDifference替换POSITION_DIFFERENCE,看看是否有效。
https://stackoverflow.com/questions/45179668
复制相似问题