Swiftでいこう! - クラスと構造体
いろんなものをひとまとめにして、それを使いませれば使い勝手が良くなります。
構造体やクラスを使うとひとまとまりのブロックのようにその機能を追加したり出来ます。
構造体はより構造的なものを、クラスは雛形的に派生クラスも柔軟に作ることが出来てます。
いわゆるオブジェクト指向のプログラミングと呼ばれます。
まとめて使うものとしては関数もあります。構造体やクラスでは関数をメソッドとして実行するものを定義することが出来ます。
構造体やクラスはものを定義してそれをどのように動かすかを定義することが出来ます。
構造体とクラスの共通点は
クラスはさらに
ができます。
作ってみましょう。構造体は"struct"を頭につけて
struct SomeStructure {
// 構造体の定義をここに
}
クラスは"class"を頭につけて
class SomeClass {
// クラスの定義をここに
}
となります。
実際の数字を入れてみます。構造体。
struct Resolution {
var width = 0
var height = 0
}
この構造体をクラスで使います。
class VideoMode {
var resolution = Resolution()
var interlaced = false
var frameRate = 0.0
var name: String?
}
これを使うためには変数に入れることでインスタンス(実態化)を作ることができます。
let someResolution = Resolution()
let someVideoMode = VideoMode()
それぞれのプロパティを取得することが出来ます。
someResolution.width
とすると先に定義した
から"0"をとることが出来ます。変数に"."で繋いで表します。
"クラスVideoMode"の" var resolution = Resolution()"にもアクセスすることが出来ます。VideoModeを変数someVideoModeに代入しているので、
で先ほどと同じものが取得できます。