しめ鯖日記

swift, iPhoneアプリ開発, ruby on rails等のTipsや入門記事書いてます

Swift再入門28 − The Swift Programming Languageを読んでみる

この記事では「The Swift Programming Language」を1から読んだ感想とか発見を書いてみようと思います。
「The Swift Programming Language」とはSwiftの公式ドキュメントでiBooksや下ページで見る事ができます。

The Swift Programming Language (Swift 2.1): About Swift

読んだ所

今回はLexical Structureという項目を読みました。

The Swift Programming Language (Swift 2.1): Lexical Structure

学んだこと

classという名前の変数を宣言する

Swiftではで囲んだ場合、は無視されます。
その為下のようにvalueと宣言すればvalueとして使えます。

let `value` = ""
print(value)

これを使えばclassという変数名が宣言できます。

let `class` = ""
print(`class`)

SwiftのKeywords と Punctuation

下のものがあるようです。

COLUMN, FILE, FUNCTION, LINE は初めて知りました。
それぞれファイルのパス、メソッド名、行番号を出力します。
COLUMNは列(何文字目か)を表すようです。

associativity, left, rightも知らなかったのですが、これは演算子の定義に使うようです。

class, deinit, enum, extension, func, import, init, inout, internal, let, operator, private, protocol, public, static, struct, subscript, typealias, var, break, case, continue, default, defer, do, else, fallthrough, for, guard, if, in, repeat, return, switch, where, while, as, catch, dynamicType, false, is, nil, rethrows, super, self, Self, throw, throws, true, try, __COLUMN__, __FILE__, __FUNCTION__, __LINE__, _, associativity, convenience, dynamic, didSet, final, get, infix, indirect, lazy, left, mutating, none, nonmutating, optional, override, postfix, precedence, prefix, Protocol, required, right, set, Type, unowned, weak, willSet

Null character

文字列中の\0という文字はNull characterといって無視されます。

print("cc\0aa") // → ccaa