gpt4 book ai didi

ios - 将 Objective-C 文件扩展名从 .m 更改为 .mm 会导致错误

转载 作者:行者123 更新时间:2023-12-01 17:26:35 35 4
gpt4 key购买 nike

最初我在 LoginViewController.m 中有包含以下警告的文件,我忽略了它。并且代码工作正常。

warning: sending 'LoginViewController *' to parameter of incompatible type 'id<NSStreamDelegate>'

但现在我将文件扩展名更改为 .mm (LoginViewController.mm)。由于此错误,现在我无法再构建项目。
Cannot initialize a parameter of type 'id<NSStreamDelegate>' with an lvalue of type 'LoginViewController *'

怎么了?

最佳答案

warning: sending 'LoginViewController *' to parameter of incompatible type 'id<NSStreamDelegate>'

此警告是由于您不符合协议(protocol) NSStreamDelegate当你定义类时 LoginViewController .理想情况下,您的类应该符合该协议(protocol),以便当您将其设置为委托(delegate)时,它可以理解您正在实现它期望的任何委托(delegate)方法。

例如:-
@interface LoginViewController : UIViewController<NSStreamDelegate> {}

一旦你解决了这个问题,当你更改为 .mm 类时,你不应该得到另一个错误。

关于ios - 将 Objective-C 文件扩展名从 .m 更改为 .mm 会导致错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15304831/

35 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com