2017-09-18 77 views
0

假設我正在寫一個swift模塊,並且想要命名一個已經存在的名稱。如果名稱來自另一個模塊,則很容易。我可以只使用模塊名作爲一個命名空間:有沒有什麼辦法可以在Swift中引用當前模塊?

import Foundation 

class MyClass { 
    class Notification : Foundation.Notification { ... } 
} 

我的問題是,有沒有辦法做類型相同的同一模塊中?例如,我希望能夠做這樣的事情:

class Notification { ... } 

class MyClass { 
    class Notification : Module.Notification { ... } 
} 

哪裏Module.Notification是上述聲明的類型的引用。這樣的事情可能嗎?

+0

當你嘗試時發生了什麼?你寫的是它是如何工作的。 –

+0

如果我嘗試在操場上運行第二塊代碼,我會得到:'使用未聲明的類型:模塊' – sak

+1

啊。您需要使用模塊的實際名稱。如果您在Xcode中工作,那麼默認爲您的目標名稱。 –

回答

1

您需要使用您的模塊的實際名稱:

class Notification { ... } 

class MyClass { 
    class Notification : MyAmazingTwitterApp.Notification { ... } 
} 

如果你在Xcode中工作,這個默認爲您的目標名稱。在「打包」下有一個生成設置「產品模塊名稱」,可讓您更改此設置。

如果您使用的是Swift編譯系統,那麼當然在您的清單文件中通過PackageDescription指定。

相關問題