小编Alv*_*ivi的帖子

在新行上打印列表的元素

我正在尝试将列表中的元素打印到新行上,但我无法将其工作;

printElements :: [String] -> IO()
printElements (x:xs) =  print x (some kind of newline, then loop?) printElements xs
Run Code Online (Sandbox Code Playgroud)

所以这:

["1","2","2","4"]
Run Code Online (Sandbox Code Playgroud)

会给:

1
2
3
4
Run Code Online (Sandbox Code Playgroud)

haskell

39
推荐指数
3
解决办法
4万
查看次数

使用关联类型和泛型时出错

以下代码在线给我一个错误return p.foo(self).错误说:'P' does not have a member named 'foo'.

protocol P {
  typealias T
  func foo(c: C<T>) -> T
  func foo2() -> T
}

class C<T> {
  var p: P
  init (p: P) {
    self.p = p
  }
  func bar() -> T {
    return p.foo(self);
  }
}
Run Code Online (Sandbox Code Playgroud)

该协议P定义了一个相关的类型,它应该与任何专门的C类型正确匹配.我错过了什么吗?或不?

swift

9
推荐指数
1
解决办法
3190
查看次数

为什么UIFont(descriptor:size :)比UIFont(name:size :)慢x200?

最近,我注意到滚动的性能正在降低。我找到了问题所在,发现原因是使用了UIFont(descriptor:size :)构造函数创建的字体。我更改了UIFont(name:size :)的构造函数,并解决了我的问题。

我在一个项目中隔离了问题。代码是:

import UIKit

class ViewController: UIViewController {
  @IBOutlet weak var firstLabel: UILabel!
  @IBOutlet weak var secondLabel: UILabel!

  @IBAction func onStartTest(sender: AnyObject) {
    startMeasurement()
    let firstFont = UIFont(name: "Marker Felt", size: 16)
    firstLabel.font = firstFont
    finishMeasurement("UIFont(name)")

    startMeasurement()
    let secondFontDescriptor = UIFontDescriptor(name: "Marker Felt", size: 16)
    let secondFont = UIFont(descriptor: secondFontDescriptor, size: 16)
    secondLabel.font = secondFont
    finishMeasurement("UIFont(descriptor)")
  }
}

private var time: UInt64 = 0

public func startMeasurement() {
  time = mach_absolute_time()
} …
Run Code Online (Sandbox Code Playgroud)

iphone ios

2
推荐指数
1
解决办法
391
查看次数

标签 统计

haskell ×1

ios ×1

iphone ×1

swift ×1