【发布时间】:2018-01-22 01:48:11
【问题描述】:
我已经为我的AchievementObject 类创建了一个achievementArray,并附加了所有必要的值。出于测试目的,我对第一个索引进行了硬编码。我想将此数组传递给我的AchievementDatabase 类,以便检查数组的大小。 (我想在集成我的实际数据库之前让客户端工作)。
我收到此错误:
无法将
AppDelegate.AchievementObject.Type类型的值转换为预期的参数类型AppDelegate.AchievementObject
这是我的相关代码,都在AppDelegate.swift文件中:
var achievementArray = [AchievementObject]();
achievementArray.append(AchievementObject(achievementID: -1, achievementName: "achievementName", achievementDescription: "achievementDescription")); //Append to allow subscripting
achievementArray[1].achievementID = 1;
achievementArray[1].achievementName = "Hello World!";
achievementArray[1].achievementName = "Be Born!";
debugPrint(achievementArray[1].achievementName); //Returns Hello World!
var achievementDB = AchievementDatabase(achievementArray: AchievementObject); *<-- Error Here*
class AchievementObject {
var achievementID: Int;
var achievementName: String;
var achievementDescription: String;
init(achievementID: Int, achievementName: String, achievementDescription: String) {
self.achievementID = achievementID;
self.achievementName = achievementName;
self.achievementDescription = achievementDescription;
return;
}
class AchievementDatabase {
//Act as a local database storage until connection is made
var numAchievements: Int = 1; //Will change to achievementArray.count();
init(achievementArray: AchievementObject) {
for i in 1...numAchievements {
debugPrint("i: \(i)");
//var achievement = AchievementObject(id:i); //
}
}
【问题讨论】: