我将一些Crucible C++ Windows代码移植到Linux,它在每个类中使用称为“open”和“close”的函数......非常糟糕风格还是?幸运的是,这在Windows中不是问题,因为它们的系统调用名称不同。当我尝试调用systemcalls open()或close()时,我得到了一些有关“没有匹配函数调用类:open()”的编译器错误。我不能在整个代码中重新命名我们所有名为“class :: open”和“class :: close”的函数,而且我必须使用open()和close(),因为我正在使用串行端口。移植C++ - 代码从Windows到Unix:systemcalls与函数名冲突
所以我的问题是:我怎么能告诉编译器,我打开的意思是?我如何在C++中转义或隐藏类的名称空间?
您在Linux上使用哪种编译器? – 2010-03-24 12:20:28
gcc版本4.4.1 – marvin2k 2010-03-24 12:25:16