OC和C++混编 错误修正

因为现在的项目用到了C++的一些代码,出现了很多问题,这里记录一下

1.首先要修改配置 修改成Objective-c++


OC和C++混编 错误修正_第1张图片


之前没有一直坚持修改这个配置,想修改C++部分的代码,最后放弃了,这样做的原因可以参考这篇文章


2.枚举值 出错

把项目修改成Objective-C++的时候,出现了很多问题 主要的错误出在了SDWebImage的库上面。枚举值 声明方式应该采用下面的方式 

typedef NS_ENUM(NSInteger, SDWebImageOptions) 
{
    SBWebImageNone = 0,
    SDWebImageRetryFailed = 1 << 0,
    SDWebImageLowPriority = 1 << 1,
    SDWebImageCacheMemoryOnly = 1 << 2
};
这是之前的声明

typedef enum
{
    SBWebImageNone = 0,
    SDWebImageRetryFailed = 1 << 0,
    SDWebImageLowPriority = 1 << 1,
    SDWebImageCacheMemoryOnly = 1 << 2
}SDWebImageOptions;

关于枚举,我参考了 这位仁兄的Blog 写的很好 受益匪浅

3<<左移运算符

这个不想多写,这个是基础的基础...居然不会,问的大牛啥意思....悲剧 啥都不说了,恶补基础知识~!!


很久不写博客了,先写到这里吧。


你可能感兴趣的:(OC和C++混编 错误修正)