2014-12-18 5 views

ответ

2

Swift может иметь внешние и внутренние имена параметров:

(external internal:Int) 

Это создало бы много двусмысленности, если не было отличительных сепараторов.

+0

Я вижу. Благодарю. Внешние/внутренние параметры делают код Swift похожим на код Objective C, что я не уверен, стоит ли ему новый язык ... – cxwangyi

+0

Они не являются обязательными. Вы можете использовать '(_ internal: Int)', чтобы не использовать их. – Kirsteins

+0

@cxwangyi это не так, но по другим причинам. –

1

Это не избыточно, а просто заменяет C на :. (И, конечно, поворот типа и идентификатора.)

+0

Я думаю, что это не так просто. Как заявил @Kirsteins в предыдущем ответе, был введен для включения внешних параметров, что приводит к возможностям двух разных стилей вызова функций: стиль C/C++/Java (без внешних параметров) и стиль OC (с внешними параметрами). Я боюсь, что между этими стилями будут смертельные схватки во многих командах, использующих Swift при создании новых библиотек. – cxwangyi

+0

Ответ Кирстейнов правильный. Но * в вашем примере * 'просто заменяется на': ', поэтому нет ничего лишнего. –

Смежные вопросы