swift 一段代码请教

[复制链接]
260 7
在viewcontroller.swift中 编写如下测试代码


import UIKit


class ViewController: UIViewController {




required init(coder aDecoder: NSCoder) {
print("init");
}

var t : Int;

enum buttonColor:Int
{
case red = 1
case black = 2
case green = 3
case blue = 4
}

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.
}





func color_select_ (color:Int) -> buttonColor
{
var color_ : buttonColor;
switch (color)
{
case 1: print("black");
color_ = .black
case 2: print("blue");
color_ = .green
case 3: print("green");
color_ = .blue
default:
print("red");

}
return color_;
}


var c : buttonColor = color_select_(t); //此处编译工具提示错误。

}
错误提示是:Instance member 't' cannot be used on type 'ViewController‘


麻烦各位老师给一个原因。谢谢。

举报 使用道具

回复

7 个评论

fengxueju520  注册会员  发表于 2019-2-3 16:36:07  | 显示全部楼层
在viewcontroller.swift中 编写如下测试代码


import UIKit


class ViewController: UIViewController {




required init(coder aDecoder: NSCoder) {
print("init");
}

var t : Int;

enum buttonColor:Int
{
case red = 1
case black = 2
case green = 3
case blue = 4
}

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.
}





func color_select_ (color:Int) -> buttonColor
{
var color_ : buttonColor;
switch (color)
{
case 1: print("black");
color_ = .black
case 2: print("blue");
color_ = .green
case 3: print("green");
color_ = .blue
default:
print("red");

}
return color_;
}


var c : buttonColor = color_select_(t); //此处编译工具提示错误。

}
错误提示是:Instance member 't' cannot be used on type 'ViewController‘


麻烦各位老师给一个原因。谢谢。

举报 使用道具

回复
bemygirlok  注册会员  发表于 2019-2-3 17:06:30  | 显示全部楼层
func color_select_ (color:Int) -> buttonColor
    {
        var color_ : buttonColor = buttonColor.red;

这里初始化一下 试试 var color_ : buttonColor = buttonColor.red;

举报 使用道具

回复
Verandaemact  新手上路  发表于 2019-2-3 18:25:07  | 显示全部楼层
引用 1 楼 jimmy808126 的回复:
func color_select_ (color:Int) -> buttonColor
    {
        var color_ : buttonColor = buttonColor.red;

这里初始化一下 试试 var color_ : buttonColor = buttonColor.red;


很感谢您的回答,还是不对。错误依然。

举报 使用道具

回复
512045605  新手上路  发表于 2019-2-3 18:37:40  | 显示全部楼层
var c : buttonColor = .red; //此处编译工具提示错误。

t 没有初始化

举报 使用道具

回复
jmaliyg  注册会员  发表于 2019-2-3 18:57:24  | 显示全部楼层
Instance member 't' cannot be used on type 'ViewController‘
不能直接在类中使用,放到func中调用

举报 使用道具

回复
东闪少爷  新手上路  发表于 2019-2-3 19:28:09  | 显示全部楼层
var c : buttonColor = color_select_(t); //放到方法中

举报 使用道具

回复
rongbozhou  新手上路  发表于 2019-2-3 19:35:36  | 显示全部楼层
1.首先属性t未进行初始化,建议如下定义
var t: Int = 0
2.将c定义为计算属性
var c: buttonColor {
    return color_select_(t)
}

另外,贴出来的代码最好排版下,方便阅读。

举报 使用道具

回复
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

ios.irunthink.com
搜索
热搜: iOS swift 下拉刷新

图文热点

更多

开发教程

更多

客服中心

400-800 周一至周日 9:30-17:30 仅收市话费

关注我们

  • 微信扫描
  • 关注微信
关于我们
关于我们
友情链接
联系我们
帮助中心
精贴推荐
源码上传
注册登录
服务支持
资源下载
关注我们
官方微博
官方空间
快速回复 返回顶部 返回列表