typedef 参数的重载

Avi*_*ash 5 c++ typedef overloading

可能的重复:
使用 typedef 别名作为参数重载成员方法

我有以下方法 void setField(char x);和另一个重载方法,该方法在除void setField(int8_t x); 之外的所有平台上进行编译solarissolaris int8_ttypedef as char

有什么方法可以解决这个问题,因为我不想更改method 我收到编译器错误的名称method already exists

Tob*_*ner 3

没有办法解决这个问题。typedef 只是同一类型的另一个名称。但你只能重载不同的类型。因此,在您的情况下 - 编译器会看到 setField(char x)。

为什么需要这两种方法?由于根据标准 sizeof(char) 为 1,因此这些名称之间实际上没有区别。