Sending 'ViewController *const __strong' to parameter of incompatible type 'id<***Delegate>'

iphone开发出现警告:Sending ‘ViewController *const __strong‘ to parameter of incompatible type ‘id<***Delegate>‘

原因是没有在头文件实现相应协议。

解决方法是在头文件中

@interface 一行后面加上 <协议名>

Sending 'ViewController *const __strong' to parameter of incompatible type 'id<***Delegate>'

时间: 2024-12-07 13:04:37

Sending 'ViewController *const __strong' to parameter of incompatible type 'id<***Delegate>'的相关文章

sending &#39;const NSString *&#39; to parameter of type &#39;NSString *&#39; discards qualifiers

/** * extern NSString * const serverAddress; // constant pointer 常量指针. 就是指针是不变的 * extern const NSString * serverAddress;// pointer to constant 指向常量的指针.指针指向的是一个常量 * 以上两种方式声明的 NSString 常量相同,但是指针的方式不同. *第二种方式声明的NSString 当成 NSString 传递给函数时会有警告. 应为它是一个 常量

iOS Assigning to &#39;id&lt;XXXDelegate&gt;&#39; from incompatible type &#39;BViewController *__strong&#39;

在使用代理的时候, BViewController *BVC = [[BViewController alloc]init]; self.delegate = BVC; 出现这样的警告Assigning to 'id<XXXDelegate>' from incompatible type 'BViewController *__strong' 解决方案: #import "BViewController.h" @interface BViewController ()&l

Xcode编译警告Assigning to &#39;id&lt;XXXDelegat&gt; ——Nullable&#39; from incompatible type &#39;XXXView *const_strong&#39;

编译报警告 可能是 自定义分类使用协议时出现与父类协议的冲突 解决方法如下: Xcode编译警告Assigning to 'id<XXXDelegat> --Nullable' from incompatible type 'XXXView *const_strong'

协议类警告处理

Sending 'LeftViewController *const __strong' to parameter of incompatible type 'id<EMChatManagerDelegate>' 发送“LeftViewController * const强烈”参数不兼容的类型id < EMChatManagerDelegate >的 解决方法:在,h文件里添加 EMCallManagerDelegate 即可

IOS自定义NSDictionary键值类

使用OC自定义了一个IntPair类作为NSDictionary类的键值,与JAVA中的Pair<int,int>使用方式类似,然而在使用过程中遇到了各种问题,有必要记录一下. 首先,需要实现NSCoping协议,如果不实现的话,在使用IntPair作为key向dictionary中添加数据时会报警告:Sending 'IntPair *__strong to parameter of incompatible type 'id<NSCopying> _Nonnull' 一开始没管

Mac OSX 10.10 Yosemite编译OpenJDK 9

在Mac OSX 10.10系统上编译了下OpenJDK9,以下仅是个人安装记录,供参考. 编译时间:2015-06-13 系统版本:Mac OS X Yosemite 10.10.4 编译OpenJDK版本:JDK 9 相关软件版本: XCode版本:XCode6-Beat4    Version 6.0 (6A267n) JDK版本:1.8.0_45 软件管理工具:brew Xquartz(X11):2.7.7 参考资料: OpenJDK Home Page OpenJDK官方编译步骤(下载

xcode上编译c语言程序报错:ld: x duplicate symbol for architecture x86_64 clang: error: linker command failed with exit code 1 (use -v to see invocation)

在网上查了一下: duplicate symbol的大概意思是,编译器认为你重复定义了一些东西. linker command failed with exit code 1,则可能是项目引入了多个相同的文件. 结合本人开发中发现此类的问题,解决办法如下: 方法1:查看有问题的文件是否有重复引用.或头文件是否加载了.m 方法2:将有问题的文件删除,重新加载进去.然后:clean->build. 在开发中解决RegexKitlLite的类似问题办法: _rkl_NSExceptionForRege

iOS开发关于Block代码错误

本文永久地址为http://www.cnblogs.com/ChenYilong/p/4052362.html?,转载请注明出处. Incompatible block pointer types sending 'void (^)([ClassNameA]] *__strong)' to parameter of type '[BlockName]' (aka 'void (^)([ClassNameB]] *__strong)') 典型传参错误,[BlockName]应该传参[ClassNa

C语言中为什么不能把char**赋给const char**

这是我在知乎回答的一个问题. 这个问题是C中的一个深坑,首先说结论: char ** 和 const char ** 是两个不相容(incompatible)的类型,可以理解为不能直接赋值 在C11的6.5.2.2 Function calls中有如下内容 Each argument shall have a type such that its value may be assigned to an object with the unqualified version of the type