Форум программистов, компьютерный форум CyberForum.ru
Наши страницы

C++

Войти
Регистрация
Восстановить пароль
 
andreil
0 / 0 / 0
Регистрация: 09.12.2012
Сообщений: 11
#1

Недоступность поля структуры - C++

13.12.2013, 21:28. Просмотров 371. Ответов 6
Метки нет (Все метки)

В одном заголовке имеется следующая запись:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
class Game;
class Interface;
class FS;
class Settings;
class ScriptEngine;
class Sound;
 
typedef struct
{
    Game        *game;
    Interface   *interface;
    FS          *fs;
    Settings    *settings;
    ScriptEngine*engine;
    Sound       *sound;
} global_t;
 
extern global_t global;
В одном из исходников объявлена данная переменная:
C++
1
global_t global;
При любой попытке доступа к полю global_t::interface ругается компилятор:
C++
1
2
3
F:\Projects (C++)\SD\SD\game.cpp||In constructor 'Game::Game()':|
F:\Projects (C++)\SD\SD\game.cpp|21|error: expected unqualified-id before 'struct'|
F:\Projects (C++)\SD\SD\game.cpp|21|error: expected ';' before 'struct'|
и т.д. Если это поле закомментировать, то ошибка остается прежней При этом на другие поля реакция нормальная...

Под Linux'ом данный код компилируется на "УРА!", а под Windows - такой косяк Поэтому никак и не могу понять, в чем-же косяк. Отличие только в компиляторах - GCC 4.8.0 и MinGW (на GCC 4.7.1).

В аттаче - проект Code::Blocks. Для попытки компиляции нужны заголовки OpenAL, Vorbis и OGG, находящиеся в другом вложении (по дефолту их нету же )
0
Вложения
Тип файла: zip SD.ZIP (25.1 Кб, 4 просмотров)
Тип файла: zip include.zip (31.8 Кб, 2 просмотров)
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
13.12.2013, 21:28
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Недоступность поля структуры (C++):

Запись поля структуры в файл - C++ Builder
Записываю данные структуры из бинарного в текстовый файл. dan - переменная моей структуры. while( fread(&dan,sizeof(dan),1,f2)>0)...

Построить k различных непрерывных разрезов поля на два клеточных поля равной площади - Visual C++
мне дано такое задание: "задано прямоугольное клеточное поле и число k. Построить k различных непрерывных разрезов этого поля на два...

Какой функцией обнуляют поля структуры ? - C++ WinAPI
Подскажите пожалуйста с помощью какой функции обнуляют поля структуры ? название забыл. помню только что второй параметр это размер...

Ограничение "недоступность памяти" накладывается только на первую 1000 байтов - C++ WinAPI
суть вот в чем : 1. с помощью функции moduleInf ищу нужный мне модуль , с помощью неё же определяю размер и начало dll'ки 2. накладываю...

Закрытые поля структуры. - C++
Существуют ли закрытые поля структуры? Если да, то как их описывать? Добавлено через 39 минут 26 секунд Ну что никто не может...

Поля структуры в памяти - C++
Приветствую всех!!! Интересует следующий вопрос: есть какая нибудь любая структура, например: struct my_struct { int number; ...

6
mytilus
83 / 83 / 9
Регистрация: 04.10.2012
Сообщений: 335
14.12.2013, 19:26 #2
interface - зарезервированное слово. Используй другое.
0
Tulosba
:)
Эксперт С++
4396 / 3232 / 297
Регистрация: 19.02.2013
Сообщений: 9,045
16.12.2013, 15:10 #3
Цитата Сообщение от mytilus Посмотреть сообщение
interface - зарезервированное слово.
В C++ нет такого зарезервированного слова. В каком-нибудь C++/CLI возможно. Вместе с abstract.
0
andreil
0 / 0 / 0
Регистрация: 09.12.2012
Сообщений: 11
16.12.2013, 15:38  [ТС] #4
Tulosba, В Windows - зарезервированно:
Если пороетесь в заголовочных файлах винды, найдете чтото вроде:
#define interface struct...
В Linux такой беды нету
0
Tulosba
:)
Эксперт С++
4396 / 3232 / 297
Регистрация: 19.02.2013
Сообщений: 9,045
16.12.2013, 16:03 #5
Цитата Сообщение от andreil Посмотреть сообщение
В Windows - зарезервированно:
Не надо иклюдить всякую дрянь
0
andreil
0 / 0 / 0
Регистрация: 09.12.2012
Сообщений: 11
16.12.2013, 16:38  [ТС] #6
Tulosba, в том-то и дело, что только stdio, stdlib, да windows.h. остальное - OpenGL, Vorbis, OpenAL - и этого не требует
0
Tulosba
:)
Эксперт С++
4396 / 3232 / 297
Регистрация: 19.02.2013
Сообщений: 9,045
16.12.2013, 17:08 #7
Цитата Сообщение от andreil Посмотреть сообщение
да windows.h
Уберите его нафиг. Там нелепые дефайны и прописаны.
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
16.12.2013, 17:08
Привет! Вот еще темы с ответами:

Как перебрать поля структуры? - C++
возможно ли это в с++ ? (c# - GetFields)

Обьеденить два поля структуры - C++
Имеется структура struct spis { char fim; char fio; char nam; char otch; ...

Сортировка поля структуры по возрастанию - C++
Здравствуйте! Есть вот такой вопрос: Есть программа печати расписания, вот ее код #include <iostream.h> #include <conio.h> #include...

Поля структуры внутри класса - C++
Здравствуйте, почему при выполнении метода movingNode поля элемента структуры node (координаты x и y) не меняются? Метод: void...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
7
Yandex
Объявления
16.12.2013, 17:08
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru