我的库中有一个不透明类型,定义如下:
typedef struct MyOpaqueType* MyType; // easier to type for client code
我无法使用typedef传递指向常量结构的指针,因此某些函数看起来像:
void UsePointerToConst ( const struct MyOpaqueType * )
替代方法:
void UserPointerToConst( const MyType ) // can't use, is really constant pointer
因此,基于此,我有两个问题: 在参数列表中,struct关键字只在C语言中必要吗? 有更好的方法吗?我应该创建一个类似于typedef的东西吗?
typedef const struct MyOpaqueType* ConstantMyType; ?
LPSTR
(指向以空字符结尾的字符串的指针)与LPCSTR
(指向const
空字符结尾的字符串的指针)等等。 - Jon