C ++ incluant linux / types.h pour size_t

J’essaie de créer un wrapper C ++ (en ajoutant l’orientation d’object) autour d’une bibliothèque C (dont je suis l’auteur, c’est-à-dire que je peux y appliquer des modifications si nécessaire). La bibliothèque C définit certaines structures qui utilisent size_t tel que défini dans linux/types.h car il s’interface avec le kernel.

J’essaie maintenant d’inclure l’en-tête de la bibliothèque C (qui définit la structure) dans les sources de ma tentative de bibliothèque C ++. Cependant, si je le fais, le compilateur me dit que

size_t ne size_t pas un type

Quel est le moyen correct d’accéder à size_t partir de linux/types.h en C++ ?

PS: le fichier d’en-tête contient un #ifdef _cplusplus extern "C" { #endif

N’incluez pas les en-têtes du kernel dans l’espace utilisateur.

Comme indiqué dans les normes C et C ++, size_t est défini dans (et pour C ++, définit std::size_t ).

 Defined in header  Defined in header  Defined in header  Defined in header  Defined in header  (since C++11) Defined in header  (since C++11) 

http://en.cppreference.com/w/cpp/types/size_t