查看 OpenCL 头文件,我看到:
typedef struct _cl_context * cl_context;
我知道这cl_context
是一个指向前向声明的 struct 的指针_cl_context
。
从图书馆设计师的角度来看,这样做有什么好处:
typedef struct _cl_context cl_context;
只是这样 API 调用可以cl_context
代替cl_context*
吗?但如果是这样,为什么不这样做:
typedef void *cl_context;