LINUX.ORG.RU

История изменений

Исправление Waterlaz, (текущая версия) :

typedef struct { typeof((person){}.name) name; typeof((person){}.age) age; } human;

Не, объективно, тому, кто предлагает писать такой код, следует лечиться.

Зачем писать/читать то, что можно не писать/читать? Зачем писать/читать больше, если можно писать/читать меньше?

Ну, во-первых, меньше не значит лучше. Комментарии в коде вообще никак не влияют на конечный результат, но их лучше бы писать.

Во-вторых, и это абсолютно объективно, ты написал больше. Вот это:

typeof((person){}.name) name;
Требует как больше символов, так и больше синтаксических элементов (лексем?), чем вот это:
name_t name;

Исходная версия Waterlaz, :

typedef struct { typeof((person){}.name) name; typeof((person){}.age) age; } human;

Не, объективно, тому, кто предлагает писать такой код, следует лечиться.

Зачем писать/читать то, что можно не писать/читать? Зачем писать/читать больше, если можно писать/читать меньше?

Ну, во-первых, меньше не значит лучше. Комментарии в коде вообще никак не влияют на конечный результат, но их лучше бы писать.

Во-вторых, и это абсолютно объективно, ты написал больше. Вот это:

typeof((person){}.name)
Требует как больше символов, так и больше синтаксических элементов (лексем?).