Własny typ danych + "prywatna" struktura - kiedy to ma sens?

0

Hej. ostatnio trafiłam na coś takiego http://stackoverflow.com/questions/3824329/partitioning-struct-into-private-and-public-sections i zastanawiam się kiedy ma to sens? gdy mam typ danych i funkcje napisane specjalnie dla tego typu np.

typedef struct {
	char			*name;
	char			*group;
	int			age;
	int			mark;
	char			*files[STUDENT_NOF_FILES];
} student_t;
//wariant z prywatna
struct student_file {
	char	*path;
};

typedef struct {
	char				*name;
	char				*group;
	int				age;
	int				mark;
	struct student_file	(*files)[STUDENT_NOF_FILES];
} student_t;

i w strukturze mam np. tablicę wskaźników na stringi np. files, która zewnętrznie się nie przyda, ale jest potrzebna "prywatnie" żeby działały funkcje napisane dla tego typu prawidłowo działały. Zastanawiam się czy warto bawić się w takie ala private tych danych potrzebnych tylko w środku biblioteki za pomocą struktury? chodzi mi o takie jakby static tylko, że gdy jesteśmy w klamerkach,

2

To i tak nie jest prywatne, a komplikuje kod przez dodanie wskaźnika, trzeba pilnować by prawidłowo taką pamięć przydzielić i zwolnić.
Rozumiem zamysł, ale odrzuciłbym go i zostawił normalną strukturę.

1 użytkowników online, w tym zalogowanych: 0, gości: 1