• home
  • Swiftさん、アレないっす

Swiftさん、アレないっす

Swiftに興味津々のおヒトに言語仕様つらつら逝っちゃうのもいいかと思ったけどぉ…
本日は、入り口編

新規カラのProjectつくるとないんですょ、アレが… そお、main関数です !!

Objective-Cでいえば、こんなの

[ruby]
#import <UIKit/UIKit.h>

#import "AppDelegate.h"

int main(int argc, char * argv[])
{
@autoreleasepool {
return UIApplicationMain(argc, argv, nil, NSStringFromClass([AppDelegate class]));
}
}
[/ruby]

Objective-CはCの仲間なんで、main関数があるんですね。UIApplicationMainの前で行いたい処理、あるでしょ?!
Swiftではファイルごとありません。えぇぇぇ、ダメダメじゃん!!
あわてちゃいけませんよ、お客さん!! Swiftは、ちゃあんと隠し持っています。
それが、コレ@UIApplicationMain AppDelegate.swiftにあります。

でもコレじゃぁ、UIApplicationMainの前に処理入れられないって!!
だからあわてないでって言ってるじゃないですか。

[ruby]
import UIKit

UIApplicationMain(C_ARGC, C_ARGV, NSStringFromClass(UIApplication), NSStringFromClass(AppDelegate))
[/ruby]

こんなかんじのmain.swiftをつくって、@UIApplicationMain をコメントアウトすればいいんです!!