2012-01-06 61 views
1

在Mac OS X上,函數構造函數有什麼作用?它是幹什麼用的?你能舉個簡單的例子嗎?我知道它與系統調用有關,但究竟是什麼?「格式塔」做什麼?

+0

http://www.cocoadev.com/index.pl?DeterminingOSVersion – 2012-01-06 23:57:06

+0

這個名稱在舊的Mac OS中有很長的歷史:http://tinyurl.com/6dyah7m(必須使用tinyurl,因爲它會嚴重破壞paren標題) – asveikau 2012-01-07 00:57:34

回答

7

格式塔爲您提供了有關運行應用程序的系統的詳細信息,例如操作系統版本。下面是一個簡單的例子來獲得系統在Mac OSX版本的二進制運行:

#include <stdio.h> 
#include <Gestalt.h> 

int main() { 
    SInt32 versMaj, versMin, versBugFix; 
    Gestalt(gestaltSystemVersionMajor, &versMaj); 
    Gestalt(gestaltSystemVersionMinor, &versMin); 
    Gestalt(gestaltSystemVersionBugFix, &versBugFix); 

    printf("Mac Version: %d.%d.%d\n", versMaj, versMin, versBugFix); 
} 

編譯和運行這個測試:

gcc -framework Carbon test.c && ./a.out 

您可能ASLO需要像-I/Developer/Headers/FlatCarbon/

標誌

這應該給出如下響應:Mac Version: 10.6.8

我在閱讀official docs後創建了此示例。

相關問題