Код: Выделить всё
struct long_project_name_x {
struct long_project_name_x_y {
struct long_project_name_x_y_z {
int i;
} z;
} y;
};
< /code>
В c вложенные определения структуры все занимают глобальное пространство имен, поэтому я могу обратиться к любому из них без каких-либо проблем: < /p>
struct long_project_name_x x = { 1 };
struct long_project_name_x_y y = { 1 };
struct long_project_name_x_y_z z = { 1 };
Код: Выделить всё
long_project_name_x x = { 1 };
long_project_name_x::long_project_name_x_y y = { 1 };
long_project_name_x::long_project_name_x_y::long_project_name_x_y_z z = { 1 };
< /code>
Есть ли способ написать код, который будет работать как в C, так и в C ++? Я попробовал: < /p>
#ifdef __cplusplus
using long_project_name_x_y = long_project_name_x::long_project_name_x_y;
#endif
Подробнее здесь: https://stackoverflow.com/questions/795 ... mpile-in-c
Мобильная версия