Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ios/113.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ios 结构内的函数-无可访问的初始化器错误_Ios_Swift_Swift4 - Fatal编程技术网

Ios 结构内的函数-无可访问的初始化器错误

Ios 结构内的函数-无可访问的初始化器错误,ios,swift,swift4,Ios,Swift,Swift4,在构建我的第一个应用程序时,遵循SO的大量建议,我有2个结构。。。。1个用于“WorkoutExercise”,1个用于“WorkoutExerciseGenerator” 我正在尝试测试我的生成器,但我得到一个无法访问的初始化错误 下面是结构1: struct WorkoutExercise { let name : String let reps : Int } 下面是struct 2,底部有一些测试和打印(这不起作用): 我在这里的想法(在这里进行了一点研究之后)是,

在构建我的第一个应用程序时,遵循SO的大量建议,我有2个结构。。。。1个用于“WorkoutExercise”,1个用于“WorkoutExerciseGenerator”

我正在尝试测试我的生成器,但我得到一个无法访问的初始化错误

下面是结构1:

struct WorkoutExercise {

    let name : String
    let reps : Int

}
下面是struct 2,底部有一些测试和打印(这不起作用):

我在这里的想法(在这里进行了一点研究之后)是,我正确地插入了生成器的参数(“下蹲”和“maxReps:10”),所以不确定为什么这不起作用?(在这种情况下,从“var=test”中生成蹲起+随机次数小于10的重复)


在此之后,我将尝试使用一组练习名/max rep值来存储我的所有练习,并随机抓取3-6个练习来创建一个完全随机的训练,但我认为(希望)如果我得到这个位,我可以解决这个问题,将
test
变量和
print
语句移出结构

struct WorkoutExerciseGenerator {
    let name: String
    let maxReps: Int

    func generate() -> WorkoutExercise {
        return WorkoutExercise(
            name: name,
            reps: Int(arc4random_uniform(UInt32(maxReps))))
    }
}

var test = WorkoutExerciseGenerator(name: "squat", maxReps: 10)
print (test.generate())

test
变量和
print
语句移出结构

struct WorkoutExerciseGenerator {
    let name: String
    let maxReps: Int

    func generate() -> WorkoutExercise {
        return WorkoutExercise(
            name: name,
            reps: Int(arc4random_uniform(UInt32(maxReps))))
    }
}

var test = WorkoutExerciseGenerator(name: "squat", maxReps: 10)
print (test.generate())

你的代码运行得很好,我在操场上测试过。如果你在操场上跑步,在
var测试之前将最后一个大括号移到行中…
这样一个新手错误,谢谢-这也在我的实际项目中修复了它:-)@Paulw11谢谢-我还需要在打印语句中实际调用generate!你的代码运行得很好,我在操场上测试过。如果你在操场上跑步,在
var测试之前将最后一个大括号移到行中…
这样一个新手错误,谢谢-这也在我的实际项目中修复了它:-)@Paulw11谢谢-我还需要在打印语句中实际调用generate!如上所述,菜鸟错误谢谢-我也忘了在我的print语句中调用generate那也是如上所述,菜鸟错误谢谢-我也忘了在print语句中调用generate