Я не знаю, что искать, чтобы найти объяснение для этого, поэтому я спрашиваю. У меня есть этот код, который сообщает об ошибке:
struct Settings{
int width;
int height;
} settings;
settings.width = 800; // 'settings' does not name a type error
settings.height = 600; // 'settings' does not name a type error
int main(){
cout << settings.width << " " << settings.height << endl;
но если я поместил назначение значения в main, он будет работать:
struct Settings{
int width;
int height;
} settings;
main () {
settings.width = 800; // no error
settings.height = 600; // no error
Можете ли вы объяснить мне, почему?
EDIT:
Что касается ответа Ральфа Тандецки, вот мой полный код структуры. Не могли бы вы показать мне, как назначать значения так же, как и в моей структуре фрагмента?
struct Settings{
struct Dimensions{
int width;
int height;
} screen;
struct Build_menu:Dimensions{
int border_width;
} build_menu;
} settings;