Swift

Swift:struct構造体

structで構造体を定義できます。クラスの外側に定義した場合と、クラスの内側に定義した場合の使い勝手を確認しました。

クラスTestSwiftの上側に書いたものを【外側】(クラス外)、クラスTestSwiftの下側に書いたものを【内側】(クラス内)としています。

import Cocoa
struct StStructure {  
    var richHouse  = 0 
    var richpeople = “John”  
}     
//————————————————————————–//
class TestSwift: NSObject, NSApplicationDelegate {
@IBOutlet var window: NSWindow
struct ValueStructure {
    var filepath:String   = “int01”       
        var urlUpdated:String = “int02”     
        let urlDefault:String = “int03”    
    }  
var vs = ValueStructure() 
var exStructure = StStructure()  

わかったことは次の通りです。

  • クラスの内・外による違いはありません。
    ➡ほかのクラスとの関係ではどうか、このあと、調べておく必要があります。
    クラス内structはほかのクラスから参照不可。クラス外は参照可。
  • structの利用宣言var vs = ValueStructure()  をクラスの初期化の箇所に書いておけば、このクラスのメソッドの中でこれをシェアできるので便利です。
  • 構造体は、vs.filepath、exStructure.richHouseのように修飾して利用します。
  • var変数は変更可能で、変更した値はメソッド間で値が引き継がれます。
  • vs = ValueStructure(filepath:”x”, urlUpdated:”y”, urlDefault:”z”)のような書き方をするとき、省略ができませんでした。この使い方は今ひとつ意味不明です。

スクリーンショット 2014-07-20 15.18.54

Categories: Swift, 技術

Tagged as: