[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Чёртов язык Си!



Оказывается, можно объявлять структуры, не объявляя их поля. Я в
шоке. Оказывается, заголовки можно писать вот так:

---------- my-objects.h ----------
> struct my_object;
> struct my_object * my_object_create();
> int my_object_do_something(struct my_object * object); 
----------------------------------

И таким образом изменение структуры не повлечёт за собой необходимость
перекомпиляции всех программ, которые пользуются библиотекой my-objects.

Что примечательно, в справке [1] ни слова о том, что так можно делать.
Подскажите, я как-то не так читаю? Я вроде с языком Си уже давно дружу,
и меня очень огорчает то, что я узнаю о таких вещах случайно на бордах
вроде OpenNet'а.

[1] http://www.gnu.org/software/gnu-c-manual/gnu-c-manual.html#Defining-Structures

Attachment: pgpoRmSm1hHbv.pgp
Description: PGP signature


Reply to: