Хабр Курсы для всех
РЕКЛАМА
Большая витрина: от крупнейших школ до частных авторов. Сравнивайте по цене, длительности, формату и выбирайте самый подходящий курс!
я стараюсь сделать так, чтобы пользователю описание типа было не видно
typedef struct Alice Alice_t;
Alice_t* aliceNew ();
void aliceDestroy (Alice_t* o_alice);
size_t aliceSize ();
void rabbitHole (Alice_t i_alice);#include "../AliceInWonderland.h"
struct Alice {
// ...
}#include "AliceInWonderland.h"
#include "private/AliceInWonderland.h"
Alice_t* aliceNew () {
return (Alice_t*) malloc (aliceSize ());
}
void aliceDestroy (Alice_t* o_alice) {
free (o_alice);
}
size_t aliceSize () {
return sizeof (Alice_t);
}
void rabbitHole (Alice_t i_alice) {
// ...
}
Что должно быть в с-файле, а что должно быть в h-файле?