![]() |
|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
![]() |
|
|
Опции темы | Поиск в этой теме |
![]() |
#71 |
Старожил
Регистрация: 28.01.2009
Сообщений: 21,000
|
![]() Хорошо поставленный вопрос это уже половина ответа. | Каков вопрос, таков ответ.
Программа делает то что написал программист, а не то что он хотел. Функции/утилиты ждут в параметрах то что им надо, а не то что вы хотите. |
![]() |
![]() |
![]() |
#72 | |
Вредный кошак
Участник клуба
Регистрация: 14.10.2012
Сообщений: 1,159
|
![]() Цитата:
в каждый момент времени нужна всего одна, но несколько переменных таскать не хочется, либо нет возможности. Закладываясь на реализацию, можно творить более изысканные вещи, правда оно будет не стандарт и UB. |
|
![]() |
![]() |
![]() |
#73 | |
Заблокирован
Регистрация: 06.02.2011
Сообщений: 1,999
|
![]() Цитата:
я могу его вложить в старую профессию. тем самым заработать монетку.это сделано для того что-бы экономить память ? |
|
![]() |
![]() |
![]() |
#74 |
Старожил
Регистрация: 28.01.2009
Сообщений: 21,000
|
![]()
самое явное что я помню это то что с помощью юниона можно было легко обернуть вещи как
структура пакета вида: <type><data> и собственно тогда не приходится работать с указателями и кастом. (или когда работал на низком уровне с процем и заполнял таблицу прерываний, там правда еще и битовые поля были ![]() Хорошо поставленный вопрос это уже половина ответа. | Каков вопрос, таков ответ.
Программа делает то что написал программист, а не то что он хотел. Функции/утилиты ждут в параметрах то что им надо, а не то что вы хотите. |
![]() |
![]() |
![]() |
#75 | |
Вредный кошак
Участник клуба
Регистрация: 14.10.2012
Сообщений: 1,159
|
![]() Цитата:
Также, например, можно "унифицировать" интерфейс. Посмотрите, например, исходники SFML, там в основе sf::Event лежит именно Union. Вот Вам и реальное применение. |
|
![]() |
![]() |
![]() |
#76 |
Заблокирован
Регистрация: 06.02.2011
Сообщений: 1,999
|
![]()
ну а какой-то жиденький примерчик есть ?
что-бы можно было видеть что там на самом деле происходит. конструктор у нее есть ? |
![]() |
![]() |
![]() |
#77 | |
Вредный кошак
Участник клуба
Регистрация: 14.10.2012
Сообщений: 1,159
|
![]() Цитата:
Там очень даже хороший пример использования. |
|
![]() |
![]() |
![]() |
#78 |
Заблокирован
Регистрация: 06.02.2011
Сообщений: 1,999
|
![]()
Жаль что тут никто не вкурсе что union это парадигма которая использовалась
еще в си. Код:
a = 200 b = 500.78 *************************** a = -515396076 b = 500.78 |
![]() |
![]() |
![]() |
#79 | |
Вредный кошак
Участник клуба
Регистрация: 14.10.2012
Сообщений: 1,159
|
![]() Цитата:
Вы ж кричите ,что знаете c++, но при этом первый раз в глаза union видите, какой смысл вообще что-то объяснять и рассказывать? Как об стенку горох же. Плюс ко всему, код Ваш содержит UB: Код:
Так что если установили одно "поле", то чтение из других "полей" - UB. Хотя, в большинстве случаев оно прокатит, но как только случай будет сложнее и/или включаться какие-нибудь особые оптимизации - всё может поломаться к чертям. |
|
![]() |
![]() |
![]() |
#80 |
Заблокирован
Регистрация: 06.02.2011
Сообщений: 1,999
|
![]() |
![]() |
![]() |
![]() |
|
![]() |
||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Стандартные средства = бесконечный полет фантазии. | Alex Cones | Софт | 2 | 27.07.2009 17:10 |
Мои статьи про работу программистов | Юлия_shell | Обсуждение статей | 2 | 27.04.2009 18:41 |