使用C ++模板作为Objective-C方法的参数

zkl*_*pow 2 c++ templates objective-c++

如何使用C ++模板作为Objective-C方法的参数?本质上我想做这样的事情:

template<typename T> 
- (void)method:(T)arg
Run Code Online (Sandbox Code Playgroud)

但这不起作用。根据文档,这是可能的,但是未提供任何示例。有人知道怎么做吗?

ken*_*ytm 5

不,你不能那样做。

无法在C ++模板中声明Objective-C的类,协议和类别,也不能在Objective-C接口,协议或类别的范围内声明C ++模板。

即使可以声明该模板,它也无济于事,因为无法按类型重载Objective-C方法。