2014-09-17 2 views
1

je tentais de trouver ce que fait le symbole # signifie dans la déclaration de chaîne NSLocalized à Swift:Que signifie # dans Apple Swift?

func NSLocalizedString(key: String, tableName: String? = default, bundle: NSBundle = default, value: String = default, #comment: String) -> String 

La seule documentation sur # J'ai trouvé est here. Et ce n'est rien. Ils mentionnent simplement qu'il est enregistré pour la ponctuation.

Donc, ce n'est pas comme si ce symbole change quelque chose, mais je voudrais vraiment savoir ce que c'est? Il semble que cela pourrait fonctionner très bien sans cela ...

Des idées?

Répondre

7

Vérifiez la section Les noms de paramètres externes sténographie de cette doc: https://developer.apple.com/library/prerelease/mac/documentation/Swift/Conceptual/Swift_Programming_Language/Functions.html#//apple_ref/doc/uid/TP40014097-CH10-XID_256

Voici l'extrait en cas le lien ci-dessus ne fonctionne pas dans l'avenir:

sténographie Noms externes paramètres

Si vous souhaitez fournir un nom de paramètre externe pour un paramètre de fonction et que le nom du paramètre local est déjà un nom approprié à utiliser, vous n'avez pas besoin d'écrire deux fois le même nom pour ce paramètre. Au lieu de cela, écrivez le nom une fois, et préfixez le nom avec un symbole de hachage (#). Cela indique à Swift d'utiliser ce nom à la fois comme nom de paramètre local et comme nom de paramètre externe.