ios – ‘NSLog’不可用:swift中不可用Variadic函数

前端之家收集整理的这篇文章主要介绍了ios – ‘NSLog’不可用:swift中不可用Variadic函数前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我是新来的当我正在学习基础知识时,我在NSLog得到这个错误

这是我的代码

  1. import UIKit
  2.  
  3. class ViewController: UIViewController {
  4.  
  5. var myString: NSString?
  6.  
  7. override func viewDidLoad() {
  8. super.viewDidLoad()
  9. myString = "himanth"
  10. print(myString)
  11. NSLog("%@",myString)
  12. // Do any additional ssetup after loading the view,typically from a nib.
  13. }
  14.  
  15. override func didReceiveMemoryWarning() {
  16. super.didReceiveMemoryWarning()
  17. // Dispose of any resources that can be recreated.
  18. }
  19.  
  20.  
  21. }

如果我这样声明myString

  1. var myString: NSString!

可以使用NSLog,我也可以看到控制台.

但是声明这样的字符串会导致问题

  1. var myString: NSString?

它反映在NSLog并显示错误.

这是什么问题?

解决方法

如果你声明var myString:NSString?作为可选的,那么在将其传递给NSLog之前,您需要确保它具有一个值.

所以你可以这样做NSLog(“%@”,myString!).如果myString是零,你放!程序会崩溃,你会得到

  1. fatal error: unexpectedly found nil while unwrapping an Optional value.

但是如果它有一个值,程序将继续正常打印出来

  1. 2016-10-03 10:26:25.077 Swift3.0[65214:1579363] Test

我写了myString =“测试”.

猜你在找的iOS相关文章