我有一个仅包含.h文件的C++库,其中包含数据结构的实现,并希望在我的iPhone应用程序中使用它。
首先,我编写了一个objective-C++的包装器,作为一个类,通过组合拥有一个C++类的实例变量。然后我被"迫"将包装器类的扩展名改为.mm,并且似乎很好。但是,我必须将这个包装类文件包含到几个其他文件中,所以我不得不改变它们的扩展名(以防止一堆编译时错误)。
我正确吗?有没有办法将".mm"扩展名限制在只有几个文件中?(以防止名称冲突等)
编辑:一些更多的信息可能会有所帮助,我正在使用LLVM 1.5作为编译器(我注意到编译时错误的数量从GCC 4.2变化到LLVM 1.5,但我不确定这意味着什么,因为我没有查看所有错误)。
首先,我编写了一个objective-C++的包装器,作为一个类,通过组合拥有一个C++类的实例变量。然后我被"迫"将包装器类的扩展名改为.mm,并且似乎很好。但是,我必须将这个包装类文件包含到几个其他文件中,所以我不得不改变它们的扩展名(以防止一堆编译时错误)。
我正确吗?有没有办法将".mm"扩展名限制在只有几个文件中?(以防止名称冲突等)
编辑:一些更多的信息可能会有所帮助,我正在使用LLVM 1.5作为编译器(我注意到编译时错误的数量从GCC 4.2变化到LLVM 1.5,但我不确定这意味着什么,因为我没有查看所有错误)。
invalid use of incomplete type ...templateClassName...
。通过在网上搜索,我发现这可能意味着模板尚未被实例化。有什么建议吗? - rano