小编csc*_*arz的帖子

需要方法参数的类型和协议

我正在玩Swift并且遇到以下问题:鉴于我有预定义的类Animal:

//Predefined classes
class Animal {
    var height: Float = 0.0
}
Run Code Online (Sandbox Code Playgroud)

我现在Zoo用接受动物的构造函数编写类.但是Zoo希望每只动物都有一个名字,因此定义了Namable协议.

protocol Namable {
    var name: String {get}
}

class Zoo {
    var animals: Animal[] = [];
}
Run Code Online (Sandbox Code Playgroud)

您如何编写一个addAnimal方法,要求将对象作为参数传递为类型 Animal符合协议 Namable?你如何为animals阵列声明?

    func addAnimal:(animal: ????) { ... }
Run Code Online (Sandbox Code Playgroud)

在Objective-C中,我会写这样的东西

    - (void)addAnimal:(Animal<Namable>*)animal {...}
Run Code Online (Sandbox Code Playgroud)

xcode cocoa protocols ios swift

26
推荐指数
1
解决办法
5922
查看次数

从NSString中删除NSCharacterSet中的字符

我有一个NSCharacterSet,它包含我要从NSString中删除的所有字符.

我怎样才能做到这一点?

objective-c nsstring nscharacterset

17
推荐指数
2
解决办法
8538
查看次数

Objective-C:类别中的实例变量

我只是想问是否可以通过类别添加实例变量.我的特殊问题是,我需要将一个NSIndexPath属性添加到ASIHTTPRequest对象,但我不想将ASIHTTPRequest子类化为原则问题.

我有什么选择吗?

谢谢你的回答,克里斯蒂安

object objective-c identify asihttprequest nsindexpath

15
推荐指数
1
解决办法
9009
查看次数

获得iPhone上的声音频率

我正在寻找一个Objective-C类,它允许我在iPhone上获得实时输入声音的频率.没找到任何有用的东西.

在你问之前:频率不会改变0.1秒.

感谢答案,克里斯蒂安

iphone audio frequency objective-c live

8
推荐指数
2
解决办法
6615
查看次数

结构中的Objective-C对象的替代(ARC)

我在这里有以下代码,它不会在ARC上运行,因为它在结构中组合了Objective-C对象:

struct SingleToManyRelation {
    id singleObject;
    NSSet* manyObjects;
}
Run Code Online (Sandbox Code Playgroud)

我知道这让人想起Core Data,但这不是重点;)我只是在寻找一种解决方案来实现类似的东西,而不必创建一个"容器"类.

提前感谢您的建议,Christian

struct objective-c automatic-ref-counting

3
推荐指数
1
解决办法
2181
查看次数