У меня есть непрозрачный тип в моей библиотеке, определенный как:
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; ?