そのため、プログラムが終了するたびに呼び出される特定の関数を登録する関数を OSX (Xcode/objective C を使用) に登録する必要があります。
私はこれに遭遇しましたが、それはiOS用であり、OSX用ではないと思います.
UI を NS に置き換えて試してみましたが、うまくいきませんでした。
NSApplication *app = [NSApplication sharedApplication];
[[NSNotificationCenter defaultCenter]
addObserver:self
selector:@selector(applicationWillTerminate:)
name:BeCalledOnExit object:app];
しかし、それはコンパイルではありません。関数の前の .h & .m ファイルに明確にある場合、宣言されていない識別子です。
私はこれを使用した別のチャップに出くわしました:
-(BOOL) applicationShouldTerminateAfterLastWindowClosed:(NSApplication *) sender{
return TRUE
}
しかし、私のアプリは完全なステータスバーアプリであるため、うまくいきません。
基本的に、アプリ中にいくつかの一時ファイルを作成していますが、終了する直前に、アプリがこれらのファイルをクリアしていることを確認したいと考えています。私はそれを /tmp/.. に入れています。あまりにも多くのスペースを取りたくないでしょう。
私は本当に gcc/python のようなソリューションが欲しいのですが、
atexit(functionName);