Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск  
 
 
Рейтинг 4.68/25: Рейтинг темы: голосов - 25, средняя оценка - 4.68
 Аватар для _Valera_
495 / 377 / 136
Регистрация: 27.01.2015
Сообщений: 1,588

Правильно созданный глобальный объект

06.06.2015, 21:16. Показов 5610. Ответов 25
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Необходимо создать создать несколько объектов классов глобально.
Я делаю:
Создаю h-файл. в нем объявляю(создаю) объекты.
И в срр - передаю в них все данные.


Теперь в разных других файлах подключаю этот файл в другие, где он нужен.

Ошибки: "Имя Объекта already defined in Там-то".

Как правильно поступить?


Спасибо!
0
Лучшие ответы (1)
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
06.06.2015, 21:16
Ответы с готовыми решениями:

Как правильно вернуть объект созданный в функции?
Допустим у нас есть функция, которая динамически создает объект и должна его вернуть. К примеру, возьмем динамическое создание массива. ...

Глобальный объект
Как сделать, чтобы я создал объект, и его видел весь файл? Суть в том, что в конструктор я хочу передать аргумент. Или нужно сделать...

Глобальный объект
Есть у меня приложение с формой Win Forms(CLR) Ну у меня весь код соответственно в .h файле. Как там объявить вектор, что-бы его можно было...

25
 Аватар для _Valera_
495 / 377 / 136
Регистрация: 27.01.2015
Сообщений: 1,588
07.06.2015, 00:56  [ТС]
Студворк — интернет-сервис помощи студентам
Цитата Сообщение от lss Посмотреть сообщение
Если хочешь помощи, выложи нормальный код, который можно проверить. SFML какая?
2.1

Добавлено через 42 секунды
Цитата Сообщение от Croessmah Посмотреть сообщение
Сообщение от _Valera_
Достаточное для вылета условие, такое:
Texture t;
int main()
{
}
ЧЯДНТ?
сейчас...
0
 Аватар для _Valera_
495 / 377 / 136
Регистрация: 27.01.2015
Сообщений: 1,588
07.06.2015, 01:02  [ТС]
...
Миниатюры
Правильно созданный глобальный объект  
0
Неэпический
 Аватар для Croessmah
18149 / 10731 / 2067
Регистрация: 27.09.2012
Сообщений: 27,038
Записей в блоге: 1
07.06.2015, 01:19
_Valera_, http://en.sfml-dev.org/forums/... 5#msg36935

You shouldn't do that, even if it appears to be convenient in the first place. See also this post.

If you avoid global variables, you don't have to pass around references all the time. If you keep dependencies between classes small, then fewer object propagations are necessary. You can also group multiple arguments together (e.g. in a container) and store them as a member as soon as you initialize the object.

I'm not sure about your problem, though. Have you recompiled and linked SFML correctly? It might be that the global texture gets in conflict with other global data provided by SFML, namely the OpenGL context. At least, the error message looks like a dependent object hasn't been initialized correctly yet.
1
 Аватар для _Valera_
495 / 377 / 136
Регистрация: 27.01.2015
Сообщений: 1,588
07.06.2015, 01:26  [ТС]
Цитата Сообщение от Croessmah Посмотреть сообщение
Valera_, http://en.sfml-dev.org/forums/... 5#msg36935
You shouldn't do that, even if it appears to be convenient in the first place. See also this post.
If you avoid global variables, you don't have to pass around references all the time. If you keep dependencies between classes small, then fewer object propagations are necessary. You can also group multiple arguments together (e.g. in a container) and store them as a member as soon as you initialize the object.
I'm not sure about your problem, though. Have you recompiled and linked SFML correctly? It might be that the global texture gets in conflict with other global data provided by SFML, namely the OpenGL context. At least, the error message looks like a dependent object hasn't been initialized correctly yet.



Всем спасибо, проблема найдена. Почти пол года я писал на SFML, а проблема оказалась в библиотеках. Ну зато текстура заработала, теперь посмотрю что вылетит, когда поменяю библиотеки в основном проекте.

Спасибо!
0
Неэпический
 Аватар для Croessmah
18149 / 10731 / 2067
Регистрация: 27.09.2012
Сообщений: 27,038
Записей в блоге: 1
07.06.2015, 01:36
_Valera_, лично я делал глобальный объект, управляющий текстурами и уже из main вызывал функцию загрузки текстур, а где нужно запрашивал текстуры у этого объекта.
1
 Аватар для _Valera_
495 / 377 / 136
Регистрация: 27.01.2015
Сообщений: 1,588
07.06.2015, 01:58  [ТС]
Цитата Сообщение от Croessmah Посмотреть сообщение
_Valera_, лично я делал глобальный объект, управляющий текстурами и уже из main вызывал функцию загрузки текстур, а где нужно запрашивал текстуры у этого объекта.
Да у меня почти так же, загрузил блок текстур, потом в функции передал им значения. И все, можно использовать.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
07.06.2015, 01:58

Глобальный объект класса
Ребят, написал класс для реализации очереди на основе массива в отдельном юните, теперь мне нужно в другом получить объект класса, который...

Глобальный объект класса
Добрый вечер всем!) Вообщем суть такая: пишу статическую библиотеку, которая состоит из кучи файлов. Есть класс, конструктор которого...

Динамический глобальный объект.
Здравствуйте. Пишу Auto-Clicker . Текущая версия содержит заранее созданный массив объектов класса "TClickBase" в каждом объекте...

Почему допустимо создавать объект по другому объекту, но нельзя присваивать уже созданный объект, другому созданному объекту?
Это можно : Array a(10); a.set(0,5); Array b(a); А это нельзя : Array a(10); Array b(20); a = b;

Почему глобальный объект, объявленный до main, конструируется в ней?
Всё просто, имеем код: #include <windows.h> #include <stdio.h> using namespace std; class x { public: x () { printf...


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

Или воспользуйтесь поиском по форуму:
26
Ответ Создать тему
Новые блоги и статьи
сукцессия 30. Фосфорный и азотный замки по "честному" закону лимитирования Либиха
anaschu 16.07.2026
Основные достижения за последние дни 1. Механизм отложенного высвобождения фосфора Добавлен специальный пул для медленного разложения меланизированных гиф ЕСМ Реализована разная скорость. . .
Запрет пометки на удаление и отмены проведения
Maks 16.07.2026
Алгоритм из решения ниже реализован на нетиповом документе "ПутевойЛист" разработанного в КА2. Задача: запретить помечать на удаление и отменять проведения путевого листа при условии, если он сдан. . .
Как надо было делать правильно - вообще не слушать ИИ, его дело - текст.
Hrethgir 15.07.2026
А вообще надо было делать не так, чтобы не исправлять ошибку https:/ / www. cyberforum. ru/ blogs/ 223907/ 10996. html , правильно было : удалил кнопку, а потом добавил её. Всё это стресс конечно. Почему?. . .
Знаете, от чего появляется стресс?
kumehtar 15.07.2026
Стресс появляется оттого, что вы, зная как поступить правильно, делаете наоборот. Ларри Уингет
Нас бьют, а мы крепчаем? Какая чушь!
kumehtar 15.07.2026
Вот это вот бытующее мнение, что человек меняется только под действием проблем, всегда считал вредоносным. Поверь, от проблем у людей появляются не изменения, а нервное расстройство и ПТСР. А. . .
сукцессия 29. Переход от одних деревьев на другие делать более или менее вероятностным?
anaschu 12.07.2026
Насколько смена типов микоризы — исключительное событие в двухвековой сукцессии? Оценка вероятности в пространстве параметров В текущей версии модели успешно реализован ключевой механизм. . .
сукцессия 27. Думаю, как переделывать уже написанную статью с планами на сукцессию.
anaschu 12.07.2026
Анализ соответствия модели требованиям Реализованные компоненты: Механизм закисления почвы через протонную помпу Конкуренция между типами микориз pH как триггер сукцессии C/ P соотношение. . .
Сукцессия 26. Мат модель создана.
anaschu 12.07.2026
Модель смены растительных сукцессий посредством управления грибами работает внутри небольшой ячейки почвы, восстанавливающейся после пожара, где ненадолго бывшее царство хвойных снова захватили. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru