2016-08-28 21 views
1

Xcodeで新しいiOSプロジェクトを開始しました。ファイル・新SingleViewAppObjective-Cのアプリのエントリーポイント

それから私は、次のファイルに

enter image description here

を選択し、ゴミ箱に移動しました。

:私は main.cのファイルの内容である main.cの名前のCファイル を添加 enter image description here

: そしてIはのInfo.plistファイルから次のキーを除去しました

int main(int argc, char * argv[]) { 

     print("hello"); 
} 

これがうまくいけば、アプリはコンパイルして実行し、コンソールに「hello」と書き込みます。私の質問は次のとおりです:main.m(とmain.cではなく)がアプリケーションのエントリーポイントになっていますか?

答えて

5

ファイル名またはそのサフィックスについての規則はありません。関数名についてのみメインです。あなたのファイルはCまたはObjective-Cで書くことができます。その接尾辞は.cまたは.myです。結局、Objective-CプログラムはCプログラムです。 Objective-CはCです。

しかし、あなたのアプリは今では何のためにもCocoaを使用できません。実際にはアプリではありません。それはUIApplicationMainと決して呼ばれません。それはちょうどその1行を実行し、終了します。だから、そんなに馬鹿だ。

あなたがやっていることをより生産的に始めるには、macOSコマンドラインツールテンプレートを使用するのがよいでしょう。あなたはCでそれを書くことを選ぶことができることに注意してください!あなたが構築したものは、Cコマンドラインツールのように非常にです(ただし、iOSのコマンドラインツールはありません)。

+4

最初の文では、「name main」はファイルではなく* function *を指します。厳密に1つのものが 'main()'を定義している限り、あなたの "main()定義ファイル"の名前が 'myapp.m'または' superawesome.c'であるかどうかは気にしません。 –

+0

@RobNapierいつものようにありがとう。私は微調整します。 – matt

関連する問題