C ++代码的XCode编译错误

时间:2011-06-07 04:44:46

标签: iphone c++ compilation

我正在尝试将我的C ++类用于iPhone应用程序。我在XCode中遇到了2个编译错误,我不太明白。这是第一个,在此头文件myApps.h中,我声明了class myAppsstruct PointF

#pragma once
struct PointF {
    float x;
    float y;
};   // **compilation error message here :Multiple types in one declaration**

class myClass   { 
...
}

第二个错误也在头文件中,

#pragma once
class myClass1;
class myClass2;

class MyClass   
{
public:
  MyClass(void *view);
 ~MyClass();  

  virtual void Draw(myClass1 *c1); 
 //Error: Candidate is virtual void MyClass::Draw(myClass1 *)

  virtual void Move(myClass2 c2[], myClass1 *c1, void *callback);
  //Error: Candidate is virtual void MyClass::Move((myClass2, myClass1*, void*)
};

感谢您的帮助

2 个答案:

答案 0 :(得分:1)

好的,我不知道这对你有帮助,但从我看到的情况来看:

myClass最后应该有一个分号:

class myClass   { 
...
};

对于班级最后一个功能下面的Candidate is virtual void MyClass::Draw(myClass1 *)

using myClass1::Draw;
using myClass1::Move;

因为你可能在myClass1中有一个方法Draw and Move ... More on it here.由于我看不到myClass1和myClass2中的东西,所以很难弄清楚。

答案 1 :(得分:0)

只需检查C ++文件的文件扩展名是.m还是.mm,它必须是.mm扩展名。