开发者

How to use c++ template class in objective C

I want to use a Template class of C++ in my 开发者_运维技巧Objective C project. I have read that it is supported.

When I try to import the template class that is written in C++ I get lot of errors like

Cannot find protocol declaration for 'class' etc..

Can anyone give me a simple example of this.

Waiting for reply.


You are putting the objective c++ code in a .mm file? You need to use .mm files to tell the compiler its allows to parse c++ constructs in addition to objective-c and c.


You can't just change the name of a header file from .h to .mm - the name of the file containing the #include / #import directive needs to change.

// file: main.m
#import "cppclassdef.h" //will not work
#import "cppclassdef.mm" // also will not work. additionally will confuse XCode which will try to compile the .mm file by itself.

// file: main.mm
#import "cppclassdef.h" // this is how to do it.
0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜