代码之家  ›  专栏  ›  技术社区  ›  Mojo Risin

从UNIX到Windows的C++代码移植

c++
  •  2
  • Mojo Risin  · 技术社区  · 15 年前

    嗨,我必须把一些东西写在C++上,从UNIX基础OS到Windows Visual Studio 2008。 以下代码使用指向数据的void**-指针实现数组数据类型。

    
    struct array
    {
        int id;
        void **array; // store the actual data of the array
        // more members
    }
    

    当我在Unix上用g++编译时没关系,但是当我尝试使用MSVs2008时,我得到了错误-错误C2461:“array”:构造函数语法缺少形式参数。当我将成员从“array”更改为其他类型时,它会起作用,因此编译器似乎认为成员名“array”实际上是结构数组的构造函数。将成员命名为结构显然不是一个好的实践,但它已经用这种方式编写了。我能告诉MSV编译器忽略这个问题吗,或者我应该重命名所有与结构名相同的成员。

    3 回复  |  直到 15 年前
        1
  •  5
  •   AnT stands with Russia    15 年前

        2
  •  3
  •   Graeme Perrow    15 年前

        3
  •  2
  •   Zanson    15 年前