“星控时间扭曲”中的全局​​范围变量和阴影

时间:2013-10-24 00:19:45

标签: c++ scope global declaration ambiguity

我正在编译来自http://timewarp.sourceforge.net的“星际控制时间扭曲” 问题是游戏需要在全局范围内声明一个变量,该变量已经被一个看似是标准linux数学库的文件声明。

我冒昧或指定了我在这里的其他一些错误。
这个问题的范围涉及global_scope / new_declaration / ambiguation问题。但是我为那些可能了解游戏或者该怎么办的人提供了一些额外的帮助。

.../timewarp/src/twgui/utils.h: At global scope:
.../timewarp/src/twgui/utils.h:166: error: new declaration ‘int round(double)’
/usr/include/bits/mathcalls.h:310: error: ambiguates old declaration ‘double round(double)’

Timewarp还要求几个类在使用形式

时更正其功能声明
class something
{
     something::function()
};

代替

class something
{
     something::function()
};

Timewarp也请求,Allegro 4.2。*显然不提供,但仅作为其自身功能的备份。省略该行似乎已解决。 嗯,这很容易解决,但省略了utils.h中的'int round(double)'会产生大量的编译错误。 此外,有几个实例以

的形式声明了函数

void function();

但其他地方看似没有。在“melee.h”的视频窗口类的lock(),unlock()和deinit()函数中,产生“未定义的引用错误。”

0 个答案:

没有答案