2016-06-23 28 views
0

運行對象我現在的教練堅持認爲適當的方式在運行時初始化一個對象是如下:斯威夫特:創建於利用字符串名稱

class Person { 
    var name: String; var age: Int 
    init(name: String, age: Int){self.name = name; self.age = age}} 

func CreatePerson (person: String, personName: String, personAge: Int){ 
    var \(person) = Person (name: personName, age: personAge) 

CreatePerson(person:"Confused",personName:"Coder",personAge: 35) 

不用說,這是不是那麼簡單。 \(person)func Create Person似乎完全是一個字符串的事情。

對不起,打擾你們看起來是一個簡單的過程,但「這是它應該如何工作」真的沒有促進我的迅速能力。

+1

這段代碼是否可以編譯? –

回答

2

你的導師錯了。首先,你展示的是無效的Swift代碼。它不會編譯。其次,他/她應該教你如何編寫可讀的的代碼。在專業環境中,編寫代碼的人不會是數年後修改它的人。

這是初始化對象的最常見方式:

class Person { 
    var name: String 
    var age: Int 

    init(name: String, age: Int) { 
     self.name = name 
     self.age = age 
    } 
} 

let person = Person(name: "John Smith", age: 42) 

顯然還有很多其他的,根據不同的情況和個人風格。