加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

ios – 在ViewController中创建数组的预期声明错误,无法解决原因

发布时间:2020-12-14 18:09:00 所属栏目:百科 来源:网络整理
导读:首先,我使用 Xcode 6 beta 2.其次,我有编程经验(基本,VB,脚本语言),但它不包括任何严肃的OO编程,我对IOS编程完全不熟悉.直接进入斯威夫特.提前感谢那些可以提供帮助的人.我几天来一直在努力奋斗. 无法构建简单的UIImage数组. (为了简单起见,我已经删除了所有
首先,我使用 Xcode 6 beta 2.其次,我有编程经验(基本,VB,脚本语言),但它不包括任何严肃的OO编程,我对IOS编程完全不熟悉.直接进入斯威夫特.提前感谢那些可以提供帮助的人.我几天来一直在努力奋斗.

无法构建简单的UIImage数组. (为了简单起见,我已经删除了所有其他代码.)我试图理解为什么声明一个UIImage数组并加载图像在viewDidLoad()中工作,但不是在ViewController的“基础”,这是我似乎需要的地方它可以用于其他工作.

(我注意到它似乎与这个数组声明有关,这会引起我的困惑.我可以在任一位置声明并分配简单的UIImage变量.)

这是我的代码:

//  ViewController.swift


import UIKit

class ViewController: UIViewController {                           

    override func viewDidLoad() {

        super.viewDidLoad()

        // Do any additional setup after loading the view,typically from a nib.

    }



    override func didReceiveMemoryWarning() {

        super.didReceiveMemoryWarning()

        // Dispose of any resources that can be recreated.

    }

    var icon = UIImage[]()

    icon.append(UIImage(named: "yes.png"))    <<==== expected declaration error

    icon.append(UIImage(named: "no.png"))

}

但是这段代码没有:

import UIKit
class ViewController: UIViewController {

     override func viewDidLoad() {

        super.viewDidLoad()

        // Do any additional setup after loading the view,typically from a nib.

        var icon = UIImage[]()

        icon.append(UIImage(named: "yes.png"))    <==== no error,and builds

        icon.append(UIImage(named: "no.png"))

    }


    override func didReceiveMemoryWarning() {

        super.didReceiveMemoryWarning()

        // Dispose of any resources that can be recreated.

    }

}

解决方法

您只能在类的方法之外拥有属性声明.该类的所有功能都在方法内部.当您在方法之外声明var icon = UIImage []()时,它是一个实例属性声明并且是有效代码.

接下来的两行尝试修改属性.方法之外的代码永远不会执行,因为无法调用它.虽然您可以在方法之外声明属性,但您必须在类中的方法中使用它们.

我建议学习更多关于面向对象的编程,因为你似乎还没有完全掌握它.你可能想尝试一种比swift目前更具可靠性和学习资源的语言.如果您打算进行iOS开发,即使您想使用Swift,学习objective-c也会有所帮助,因为您将获得两种语言相同的Apple API.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读