Cで表現できる型にジェネリックを拘束したいと思います。すべてのC型が準拠しているSwift標準ライブラリにプロトコルまたは型がありますか?swiftには "C Type"プロトコルがありますか?
func doWithCType<T:CRepresentable>(cValue: T) {
// do thing with C type
}
CRepresentableでない場合は、おそらくCStructタイプですか?
手がかり:
このC型の使用:
typedef struct {
int hodor;
} Hodor;
を私は(クラッシュを引き起こす)互換性のない型に構造体を鋳造強制。これはエラーメッセージでした:Could not cast value of type '__C.Hodor' (0x1035c0700) to 'Swift.CVarArg' (0x107196240).
"__C"はどこにも見つかりませんが、Cタイプの区別があることを期待しています。
あなたが何を考えるか "Cにおける型表現"? C言語では何も生のメモリとして表現できます...プレーンなデータ型ですか? –
C関数への引数として受け入れることができる構造体やintのようなc型です。私はvoid *ルートを避けることを望んでいます。 – dave234
私はSwift/Cメッセージキューを作ろうとしています。 – dave234