首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >抑制对类的警告(尝试在objc中模拟抽象类)

问抑制对类的警告(尝试在objc中模拟抽象类)
EN

Stack Overflow用户
提问于 2010-06-10 22:52:24
回答 2查看 147关注 0票数 2

情况就是这样。我做C++程序员已经很久了。我喜欢抽象类和“接口”,所以我想用objc来做同样的事情。

我为我的接口使用了一个协议,但问题是,当我的抽象类继承自该协议时(我不想在这里实现它),我会收到如下警告:

警告:找不到'XXXXX‘的方法定义,'XXXXX’类没有完全实现'XXXXXX‘协议。

有没有办法抑制这一点呢?如果基类没有实现协议,我希望这个类的子类会抛出“正确的警告”。

另一种选择是只在需要的时候从协议继承,但我喜欢在基类中强制这样做,以确保继承实现接口。

有什么建议吗?提前谢谢。

EN

回答 2

Stack Overflow用户

发布于 2010-07-15 03:25:14

当您在Objective-C类中实现协议时,您必须实现所有方法。但是,您可以提供存根实现。这个mailing list post描述了如何在“抽象”类中使用doesNotRecognizeSelector:。

票数 2
EN

Stack Overflow用户

发布于 2010-07-15 03:09:32

我不认为有你正在寻找的解决方案。您必须定义协议中声明的所有方法,至少将它们实现为空方法。

我知道你正在寻找一个类似于代码的C++,但是Obj-C是不同的,我们必须接受它。此外,gcc支持c++/obj-c混合,所以你可以用纯C++编写项目的一部分,当你需要一些低级代码或想要一些容易移植的东西时,这是很棒的。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/3015545

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档