1

我正在尝试在 XCode 4 中使用初始化列表,

struct Vector2f
{
  float x,y;
  Vector2f():x(0.f),y(0.f){}
  Vector2f( float ix, float iy ):x(ix),y(iy){}
} ;

但我收到 7 个编译器错误,

错误

所以看起来它认为我正在做一些“位域”业务,但我正在尝试使用初始化列表!

代码文件在文件属性中被标记为“C++ 头”,但它似乎编译为 C?

4

1 回答 1

1

我懂了。包含此 C++ 源代码的文件是一个文件.m——即它被编译为“Objective-C”。

#include将ing 文件重命名为.mm将其编译模式改为Objective-C++,则Vector2fC++ 类的编译成功。

  • 我得到的另一个错误(当我struct Vector2f改为class Vector2f

未知类型名称“类”;您指的是 'Class' 吗?

于 2012-09-07T23:39:22.873 回答