【发布时间】:2018-08-24 12:50:57
【问题描述】:
我目前正在使用 ue4 完成我的 iOS 游戏。我正在使用一些特定的 iOS 代码并尝试使用“self”变量调用方法
void Aaccessactorios::Shareoption() {
[self Sharebutton];//ios
}
代码位于前处理器标签#if PLATFORM_IOS 和#endif 中
我认为我已经在我的 cpp 文件的开头声明了 self 变量:
-(id)init
{
self = [super init];
return self;
}
其他论坛提到虚幻引擎最后编译所有cpp .mm,所以我认为不是问题。
self 变量用于目标 c 部分,因此它对我的代码至关重要。如何正确混合代码并声明我的 self 变量?
谢谢
编辑:这是我尝试重新创建的部分https://answers.unrealengine.com/questions/422323/callback-from-objective-c-back-to-the-c-layer.html
【问题讨论】:
-
据我所知,一个类不能既是C++类又是Objective-C类。
self之于 Objective-C 就像this之于 C++ - 你不声明它,它是由语言为你提供的。(我也相信你的init如果它在 .cpp 中应该会产生错误文件。) -
self是未声明的标识符。什么不清楚?声明变量并为其分配对象。 -
请注意,您链接的示例未在 C++ 类中使用
self
标签: c++ ios objective-c mixing