美文网首页
C++与Objective-C类型转换

C++与Objective-C类型转换

作者: Towey_90 | 来源:发表于2017-11-03 20:54 被阅读0次

    最近接手的项目是C++和OC混编的,核心业务调用的是C++静态库提供的接口。为了方便项目使用,专门用OC封装了C++的接口作为桥接层,并且定义了相应的宏来做类型转换。

    //OC 转 C++
    
    //NSString 转 string
    #define STRING_FROM_OC_TO_CPP(cpp, oc) (cpp) = [(oc ? oc : @"") UTF8String]
    
    //NSInteger 转 int
    #define INTERGER_FROM_OC_TO_CPP(cpp, oc) (cpp) = (int)(oc)
    
    //CGFloat 转 double
    #define CGFLOAT_FROM_OC_TO_CPP(cpp, oc) (cpp) = (double)(oc)
    
    
    // C++ 转 OC
    
    //string 转 NSString
    #define STRING_FROM_CPP_TO_OC(oc, cpp) (oc) = [NSString stringWithUTF8String:(cpp).c_str()]
    
    //int 转 NSInteger
    #define INTERGER_FROM_CPP_TO_OC(oc, cpp) (oc) = (NSInteger)(cpp)
    
    //double 转 CGFloat
    #define CGFLOAT_FROM_CPP_TO_OC(oc, cpp) (oc) = (CGFloat)(cpp)
    

    相关文章

      网友评论

          本文标题:C++与Objective-C类型转换

          本文链接:https://www.haomeiwen.com/subject/cfdxmxtx.html