过去几个月我一直在学习Objective-C,目的是编写iOS游戏。我希望能够让游戏相对容易移植到其他平台,所以我也一直在学习C ++。我的计划是用C ++编写大部分游戏,并在Objective-C中编写绘图和游戏循环。我知道(至少我被告知)这是可能的,但有一些事情我仍然感到困惑。
答案 0 :(得分:1)
我将假设您的问题是关于如何编写C ++,因为这似乎是您所要求的。
static
个功能。这些不需要实例化,但是它们的使用有一些限制(有关详细信息,请参阅here)。::
。在.cpp文件中定义函数public void foo()
时,在标题中声明它后,必须使用public void ClassName::foo() { }
。这是因为您在标题的foo
块中定义了class ClassName { }
,但您现在处于全局范围内。public ClassName::ClassName();
,你不需要返回任何东西)。现在显然,Objective-C中有许多不同点。例如,正如您所说,init
方法(与C ++构造函数相当)会返回指向正在进行的对象的指针。如果您需要有关编写跨语言应用程序的特定信息,则应更新您的问题以使其更具体,或者打开一个新问题。
答案 1 :(得分:0)
没关系。
是:假设SomeClass.h:
#pragma once
class SomeClass {
public:
static bool myStaticMethod();
};
并在SomeClass.cpp中:
#include "SomeClass.h"
bool SomeClass::myStaticMethod() {
// A static method
return true;
}
见上文第2部分的第一部分。
其他一些说明:
一个。通过将所有.m
文件重命名为.mm
,将所有Objective-C接口代码更改为Objective-C ++。这样您就可以自由使用C ++代码。
B中。我想不出一个B.