OpenCL ヘッダー ファイルを見ると、次のように表示されます。
typedef struct _cl_context * cl_context;
cl_context
前方宣言された struct へのポインターであることを理解しています_cl_context
。
ライブラリ設計者の観点から、これを行うことの利点は次のとおりです。
typedef struct _cl_context cl_context;
cl_context
API呼び出しが代わりに取ることができるのはそれだけcl_context*
ですか? しかし、もしそうなら、なぜそうしないのですか:
typedef void *cl_context;