Хотите знать, можете ли вы использовать Metal непосредственно в C, например , этот пример используется для создания звукового сигнала:
#include <AppKit/AppKit.h>
#include <iostream>
using namespace std;
int main(void)
{
cout << "Hello world !" << endl;
NSBeep ();
return 0;
}
$ g++ -Wall -framework AppKit beep.cpp -o beep
$ ./beep
Когда я пробую даже этот пример, я получаю кучу ошибок, начиная с:
In file included from /System/Library/Frameworks/AppKit.framework/Headers/AppKit.h:10:
In file included from /System/Library/Frameworks/Foundation.framework/Headers/Foundation.h:8:
/System/Library/Frameworks/Foundation.framework/Headers/NSObjCRuntime.h:503:1: error:
expected identifier or '('
@class NSString, Protocol;
^
/System/Library/Frameworks/Foundation.framework/Headers/NSObjCRuntime.h:505:9: error:
unknown type name 'NSString'
typedef NSString * NSExceptionName NS_EXTENSIBLE_STRING_ENUM;
^
Интересно, есть ли какой-нибудь способ заставить проекты / фреймворки, такие как Metal, Foundation или AppKit, работать в C.