Dmitrii Kashin -> [email protected]  @ Tue, 07 Oct 2014 10:23:55 
+0400:

 >>  DK> Оказывается, можно объявлять структуры, не объявляя их поля. Я в
 >>  DK> шоке. Оказывается, заголовки можно писать вот так:
 >>
 >>  DK> ---------- my-objects.h ----------
 >>  >> struct my_object;
 >>  >> struct my_object * my_object_create();
 >>  >> int my_object_do_something(struct my_object * object); 
 >>  DK> ----------------------------------
 >>
 >>  ...
 >>  DK> [1] 
 >> http://www.gnu.org/software/gnu-c-manual/gnu-c-manual.html#Defining-Structures
 >>
 >> Это довольно логично, поскольку в приведенном примере структура не
 >> _определяется_.  Она _объявляется_.
 >>
 >> http://www.gnu.org/software/gnu-c-manual/gnu-c-manual.html#Incomplete-Types

 DK> Спасибо, Артём. Не дочитал, поторопился. =(

 DK> Кстати, здесь что-то непонятное с терминологией: "You can *define*
 DK> structures, unions, and enumerations without listing their members"
 DK> Я ведь правильно понимаю, что "define" - это "определять", а "объявлять" -
 DK> это "declare"? Или переводить такие слова надо как-то аккуратнее?

Да, у них там недоработка.

Но вообще надо понимать, что нет такого языка "GNU C", поэтому
gnu-c-manual не может быть руководством по языку :)

Обсуждаемая особенность была в языке C с самого начала, ее можно еще у
Кернигана и Ричи вычитать.  Хотя в наше время по Кернигану и Ричи учить
C уже не очень хорошо, уж очень там много давно снятых ограничений.


-- 
To UNSUBSCRIBE, email to [email protected]
with a subject of "unsubscribe". Trouble? Contact [email protected]
Archive: https://lists.debian.org/[email protected]

Ответить