![]() |
|
Модераторы: Daevaorn |
![]()
|
|
| Rickert |
|
|||
|
Ситхи не пройдут! ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 3356 Регистрация: 11.7.2006 Где: Лакрима Репутация: 0 Всего: 52 |
Где-то слышал, что нужно избегать глобальных переменных вообще.
Правда ли и почему? -------------------- Ни что не внушает сна крепче, чем день приисполненный трудов! |
|||
|
||||
| Alek86 |
|
|||
|
Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1299 Регистрация: 30.1.2007 Где: Киев Репутация: 21 Всего: 25 |
Избегать нужно глобальных неконстантных переменных, ибо их изменение сложно отследить
Число Пи лучше сделать глобальной константой... |
|||
|
||||
| archimed7592 |
|
|||
![]() Архимед ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 2531 Регистрация: 12.6.2004 Где: Moscow Репутация: 58 Всего: 93 |
Rickert, ну а ты попробуй придумать сценарий, при котором глобальные переменные будут хорошим решением ;). -------------------- If you have an apple and I have an apple and we exchange apples then you and I will still each have one apple. But if you have an idea and I have an idea and we exchange these ideas, then each of us will have two ideas. © George Bernard Shaw |
|||
|
||||
| Rickert |
|
|||
|
Ситхи не пройдут! ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 3356 Регистрация: 11.7.2006 Где: Лакрима Репутация: 0 Всего: 52 |
archimed7592, разработка игр. Глобальные переменные: системные установки, игровой мир, профиль игрока. Теже системные установки необходимы для инициализации окна и обработки событий.
-------------------- Ни что не внушает сна крепче, чем день приисполненный трудов! |
|||
|
||||
| vinter |
|
|||
![]() Explorer ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 2735 Регистрация: 1.4.2006 Где: Н.Новгород Репутация: 13 Всего: 56 |
так зачем им быть глобальными? можно сделать классы которые будут отвечать за конкретную часть интерфейса инициализации. Можно их сделать статическими внутри классов. |
|||
|
||||
| Rickert |
|
|||
|
Ситхи не пройдут! ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 3356 Регистрация: 11.7.2006 Где: Лакрима Репутация: 0 Всего: 52 |
Корчое ясно. Всем спасибо!
-------------------- Ни что не внушает сна крепче, чем день приисполненный трудов! |
|||
|
||||
| Alek86 |
|
|||
|
Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1299 Регистрация: 30.1.2007 Где: Киев Репутация: 21 Всего: 25 |
уточню - ты о ЛЮБЫХ глобальных переменных? имхо, я предложил 1 из сценариев, когда глобальная переменная - самое лучшее решение. ну можно еще в неймспейс Math какой-нить обернуть... |
|||
|
||||
| MAKCim |
|
|||
![]() Воін дZэна ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 5644 Регистрация: 10.12.2005 Где: Менск, РБ Репутация: 52 Всего: 207 |
неправда точнее нельзя тупо и односторонне следовать какому-то "правилу", если оно не является законом надо руководствоваться здравым смыслом где-то глобальные переменные применять не следует, а где-то они будут очень даже кстати -------------------- Ах, у елі, ах, у ёлкі, ах, у елі злыя волкі © |
|||
|
||||
| Dmi3ev |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1698 Регистрация: 28.11.2007 Репутация: 1 Всего: 41 |
если можешь, обходись без них.
если не можешь, КОНЕЧНО СТОИТ ИСПОЛЬЗОВАТЬ ГЛОБАЛЬНЫЕ ПЕРЕМЕННЫЕ. ГЛОБАЛЬНЫЕ ПЕРЕМЕННЫЕ НЕ ЯВЛЯЮТСЯ ПЛОХИМИ. ПРОСТО НАДО БЫТЬ ОСТОРОЖНЫМ. 1 ЕСЛИ ДОПУСТИМ У ТЕБЯ ЕСТЬ ГЛОБАЛЬНАЯ ПЕРЕМЕННАЯ А И В ФУНКЦИИ ЛОКАЛЬНАЯ ПЕРЕМЕННАЯ А, ТО ДЕЙСТВИЕ ГЛОБАЛЬНОЙ ПЕРЕМЕННОЙ ПЕРЕКРОЕТСЯ ЛОКАЛЬНОЙ ПЕРЕМЕННОЙ (В ЭТОЙ ФУНКЦИИ) 2 СЛОЖНО ОТСЛЕЖИВАТЬ ИЗМЕНЕНИЕ ГЛОБАЛЬНЫХ ПЕРЕМЕННЫХ ОДНАКО ЕСЛИ ЕСТЬ МНОГО ПЕРЕМЕННЫХ, КОТОРЫЕ НАДО ПЕРЕДАВАТЬ ИЗ ФУНКЦИИ В ФУНКЦИЮ, ТО Я, НАПРИМЕР, ИСПОЛЬЗУЮ ГЛОБАЛЬНЫЕ ПЕРЕМЕННЫЕ. -------------------- |
|||
|
||||
| MAKCim |
|
|||
![]() Воін дZэна ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 5644 Регистрация: 10.12.2005 Где: Менск, РБ Репутация: 52 Всего: 207 |
Dmi3ev,
-------------------- Ах, у елі, ах, у ёлкі, ах, у елі злыя волкі © |
|||
|
||||
| archimed7592 |
|
|||
![]() Архимед ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 2531 Регистрация: 12.6.2004 Где: Moscow Репутация: 58 Всего: 93 |
Угу, о любых. Любой объект помимо своего глобального использования ещё имеет этапы инициализации и финализации, которые необходимо контролировать(как моменты свершения этих этапов, так и процесс их протекания). Без этого контроля глобальная переменная такая же полезная вещь, как, к примеру, неинициализированная локальная переменная. Сразу оговорюсь, что константа - это не переменная
Возможно, что многих моё мнение шокирует, но, всё же я его выскажу(постараюсь наиболее деликатно). Производство ПО - это целая отрасль в промышленности со своей спецификой, требованиями, ньюансами, etc. В этой самой отрасли есть много разных областей, где правят свои законы. Дык вот, самые большие области - это enterprise & small business: в этих областях секрет успешных проектов заключается в искусстве наиболее эффективно производить легко поддерживаемое ПО, т.е. задачи всего три: 1) потратить наименьшее кол-во ресурсов(время+деньги); 2) уметь подстраивать проект также быстро, как меняются требования заказчика; 3) итоговый проект должен поддаваться поддержке минимальными силами(те же время и деньги). Также есть др. маленькие области, но я упомяну лишь одну, а именно компьютерные игры: в этой области секрет успешных проектов заключается в искусстве максимально быстро производить полотна неподдерживаемого кода у которого всего две задачи: 1) работать; 2) жрать минимум компьютерных ресурсов. Точнее говоря, это не обязательно должны быть полотна и не обязательно неподдерживаемый код, но ввиду жесткой конкуренции получаются именно полотна и именно неподдерживаемого кода Большинство правил хорошего тона в программировании(аля "global variables is evil") просто напросто не нужны разработчикам КИ. Я не пытаюсь обидеть разработчиков игр - это просто констатация факта, которому, кстати есть простое объяснение -------------------- If you have an apple and I have an apple and we exchange apples then you and I will still each have one apple. But if you have an idea and I have an idea and we exchange these ideas, then each of us will have two ideas. © George Bernard Shaw |
|||
|
||||
| korian |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 651 Регистрация: 8.3.2008 Где: Украина, Харьков Репутация: 3 Всего: 17 |
archimed7592,
соглашусь тока для маленьких игр, причем для компаний однодневок во-первых потому, шо если компания постоянно занимается КИ, то повторно используемый код им необходим. а во-вторых, потому шо такое детище как WOW, написать и шоб оно работало (а они его еще и поддерживают, дорабатывают)... без соблюдений правил имху не реально плюс как многие пишут, правильно написанную прогу сделать более быстрой - обычно легко а сделать более быструю прогу правильной - обычно трудно Это сообщение отредактировал(а) korian - 16.3.2008, 03:27 |
|||
|
||||
| Rickert |
|
|||
|
Ситхи не пройдут! ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 3356 Регистрация: 11.7.2006 Где: Лакрима Репутация: 0 Всего: 52 |
Нет, ты ошибаешься, поверь мне. Сейчас компании ведут политику направленную на разработку движков максимально-расширяемых. То бишь движки наращивают мышцы до такой степени, что на их основе можно было делать новые игры. Разработчики КИ живут ныне продажей движков больше, чем самими играми. Сравнить, 3 года назад движок ку3 стоил 500k$, сейчас движок doom3 стоит порядка 2kk$ -------------------- Ни что не внушает сна крепче, чем день приисполненный трудов! |
|||
|
||||
| vinter |
|
|||
![]() Explorer ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 2735 Регистрация: 1.4.2006 Где: Н.Новгород Репутация: 13 Всего: 56 |
archimed7592, голословное утверждение, которые ты не сможешь ничем подтвердить, и я уверен что ты не прав
Если бы все писали "лишь бы работало", то ни о каких аддонах изменяющих функционал и речи бы быть не могло. |
|||
|
||||
| archimed7592 |
|
|||
![]() Архимед ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 2531 Регистрация: 12.6.2004 Где: Moscow Репутация: 58 Всего: 93 |
Rickert, vinter, извиняюсь, я забыл дописать, что спорить на этот счёт у меня нет ни времени, ни какого-либо желания.
Уй ты госпади, а 2 кк - это что, предел мечтаний? Ну сколько у них будет продаж движка? И сколько они поимеют с продажи самого дума? -------------------- If you have an apple and I have an apple and we exchange apples then you and I will still each have one apple. But if you have an idea and I have an idea and we exchange these ideas, then each of us will have two ideas. © George Bernard Shaw |
|||
|
||||
| Rickert |
|
|||
|
Ситхи не пройдут! ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 3356 Регистрация: 11.7.2006 Где: Лакрима Репутация: 0 Всего: 52 |
archimed7592, а теперь посмотри сколько уже народа купило движок unreal 3 и сколько куплено копий того ж gears of war.
-------------------- Ни что не внушает сна крепче, чем день приисполненный трудов! |
|||
|
||||
| vinter |
|
|||
![]() Explorer ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 2735 Регистрация: 1.4.2006 Где: Н.Новгород Репутация: 13 Всего: 56 |
||||
|
||||
| mes |
|
|||
|
любитель ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 7954 Регистрация: 14.1.2006 Репутация: 144 Всего: 250 |
извините за оффтопик и неграммотность, но 500k$ и 2kk$ это сколько в нормальной (у.е.) валюте? |
|||
|
||||
| vinter |
|
|||
![]() Explorer ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 2735 Регистрация: 1.4.2006 Где: Н.Новгород Репутация: 13 Всего: 56 |
||||
|
||||
| mes |
|
|||
|
любитель ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 7954 Регистрация: 14.1.2006 Репутация: 144 Всего: 250 |
спасибо - чуствовал что так, но что то не верилось ... придется поверить )) |
|||
|
||||
| archimed7592 |
|
|||
![]() Архимед ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 2531 Регистрация: 12.6.2004 Где: Moscow Репутация: 58 Всего: 93 |
Да, vinter, я никогда не работал в индустрии КИ и моё мнение - лишь догадки. ОК, а ты работал? А кто работал? Выходит, ни у кого из нас аргументов нет. -------------------- If you have an apple and I have an apple and we exchange apples then you and I will still each have one apple. But if you have an idea and I have an idea and we exchange these ideas, then each of us will have two ideas. © George Bernard Shaw |
|||
|
||||
| Rickert |
|
|||
|
Ситхи не пройдут! ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 3356 Регистрация: 11.7.2006 Где: Лакрима Репутация: 0 Всего: 52 |
archimed7592, я занимался разработкой игр, разговаривал и вёл интервью с несколькими реально разрабатывающими движки людьми. Так что можешь мне поверить.
Давай смотреть логично. Взгляни на тот же Crysis и gears of war - два мостодонта, которым нужны 4 ядерные процессоры и triple sly карты от Nvidia + несколько гигов оперативки. Движки, на которых они написаны настолько монструозны, что старшно думать. Но они полностью раширяемы и независимы - из них моржно слепить любую игрушку, и я думаю даже не прибегаю к перекомпиляции исходников, имея на руках только SDK - во всяком случае так можно сделать на движке третьего дума. Помнится когда ещё была якобы-ворованная альфа версия - я сам лично разбирал его движок и писал статьи для doom3.ru - они там ещё есть, можешь почитать. Ищи поиском по автору - [ss]3L33T@ aka Cyber Optik. В данный момент, например, на его основе пишется мод - гонки, переработка на тему Carmageddon'а. Короче о чём я: народ пишет масштабируемые движки, которые стоят хренову тучу бабла и потом начинают его продавать и никто не заботится о производительности: применяют эти дурные (ИМХО! Я сам их применяю, потому что требуют стандарты, будь моя воля я б выкинул все эти stl и дурные правила по инкапсуляции кода. Это ИМХО - не надо на меня нападать!) правила и никто не думает о производительности - вот так и получаются Crysis'ы, которые идут у 25% игроков. КИ - это уже давно как шоу-бизнес - на нём делают деньги, а золотые времена, когда игры приносили удовольствие и восторг от идей - прошли, сейчас единицы способны что-либо придумать. -------------------- Ни что не внушает сна крепче, чем день приисполненный трудов! |
|||
|
||||
| Mayk |
|
||||||||||
![]() ^аВаТаР^ сообщение>> ![]() ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 2616 Регистрация: 22.5.2005 Где: за границей разум а Репутация: 45 Всего: 134 |
Это не "имхо". Это бред.
йа сморел исходнеги кваг и крестиков нолигов, так что можешь мне поверить Добавлено через 6 минут и 29 секунд Да потому что они глобальны и могут поменятся в любой момент. Не очень хорошо может сказаться при отладке(мол где ж она изменилась-то?) (утрированный пример: сравнить
и
на кол-во вызовов ф-ций dar(); ) , с многопоточностью плохо подружить.
ССЗБ -------------------- Здесь был кролик. Но его убили. Человеки < кроликов, йа считаю. |
||||||||||
|
|||||||||||
| Rickert |
|
||||
|
Ситхи не пройдут! ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 3356 Регистрация: 11.7.2006 Где: Лакрима Репутация: 0 Всего: 52 |
Программисты стали настолько слабы, что не могу контролировать процесс изменения переменных? Твои слова актуальны для крупных команд разработчиков. Я не собираюсь тебя убеждать в чём-то. Делай как знаешь, это было имхо.
Флаг в руки, транспорант тебе на шею, только между тобой и мной есть очевидная разница. -------------------- Ни что не внушает сна крепче, чем день приисполненный трудов! |
||||
|
|||||
| vinter |
|
||||
![]() Explorer ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 2735 Регистрация: 1.4.2006 Где: Н.Новгород Репутация: 13 Всего: 56 |
не все так печально, если бы все было так то игры бы загнулись давно.
а как по твоему NVidia & AMD деньги зарабатывать, зачем тогда нужны слай и кроссфаер? Да и что то я подозреваю, что там не специально сделали неоптимизированный движок, а просто графика движется вперед и жрет все больше ресурсов. |
||||
|
|||||
| Lazin |
|
||||||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 3820 Регистрация: 11.12.2006 Где: paranoid oil empi re Репутация: 41 Всего: 154 |
archimed7592,
поддерживаю)))
да, все из-за STL посмотри код Ogre3D или Irrlicht, там хватает и смарт поинтеров и контейнеров и шаблонов)) почитай что пишут профессиональные разработчики игр...
Я однажды имел счастье доделывать программу, в которой было около 30 глобальных переменных, которые использовались в разных функциях, в итоге получалось так, что меняя что-нибудь в одном месте, ломалось в другом, разные части программы очень сильно друг от друга зависили... О том что-бы что-то там распараллелить, расширить и тд не могло быть и речи.. короче просто переписал все))) теперь вспоминаю с содроганием...
и хорошо ИМХО, Современная разработка игр - это в первую очередь разработка контента, движок для каждой игры никто не пишет... А к движкам требования очень высокие, они как правило используются во множестве игр, они кросс-платформенные(PC и консоли), расширяемые и тд... и очень грамотно написаны... например unreal стоит 3 миллиона баксов, чуваки написавшие Irrlicht говорят что он нереально крут и стоит своих денег более чем, unreal 3 это не только графичесский движок, это еще и игровой движок, и АФАИК, целая среда разработки... от разработчиков игр требуется только создать контент |
||||||
|
|||||||
| MAKCim |
|
|||
![]() Воін дZэна ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 5644 Регистрация: 10.12.2005 Где: Менск, РБ Репутация: 52 Всего: 207 |
меня просто умиляет позиция "табу" на глобальные переменные
я уже который раз говорю на форуме, что стереотипы мешают нельзя на вещи смотреть однобоко -------------------- Ах, у елі, ах, у ёлкі, ах, у елі злыя волкі © |
|||
|
||||
| vinter |
|
||||
![]() Explorer ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 2735 Регистрация: 1.4.2006 Где: Н.Новгород Репутация: 13 Всего: 56 |
Максим но все же лучше использовать static члены класса\структуры чем глобальные переменные, принцип тот же, а ошибок можно получить в разы меньше.. Добавлено через 48 секунд
если это действительно новая разработка, претендующая на звание лучшей игры года, то скорее всего движок все же пишут. |
||||
|
|||||
| Alek86 |
|
|||
|
Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1299 Регистрация: 30.1.2007 Где: Киев Репутация: 21 Всего: 25 |
MAKCim, ну подскажи, плиз, в какой ситуации глобальные переменные (не константы) выигрывают у тех же статиков с функциями доступа? Ну, кроме прог-лабораторных, на пару десятков строк...
Rickert, как я понял, ты утверждаешь, что игры (точнее движки) должны писаться хорошо? Тогда там точно глобальных переменных не будет
Если они будут хоть немного друг от друга зависеть, то перечитай еще раз: ну и archimed7592, откуда такие познания про полотна неподдерживаемого кода? |
|||
|
||||
| Earnest |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 5962 Регистрация: 17.6.2005 Где: Рязань Репутация: 53 Всего: 183 |
Глобальные переменные не имеют никаких преимуществ перед, например, синглетонами (которыми их следует по-возможности, заменять) кроме одного: их можно очень быстро добавить и использовать. Т.е. глобальные переменные - это способ сделать костыль, когда нужно быстро, а дизайн иного не позволяет. Но подлежат впоследствии редизайну.
Кстати, статические переменные класса в этом смысле ничуть не лучше - только имя другое, а суть та же. ИМХО, статические переменные вполне хороши в локальном контесте (один - несколько модулей, связанных с реализацией какой-то функциональности); если речь идет о каких-то глобальных установках, которые нужны всем - лучше все собрать в кучку и выдавать по запросу - вместе или по отдельности, как удобнее. Это, кстати тоже вопрос инкапсюляции, как и открытый доступ с членам классов. Регламентированный доступ всегда лучше. Вот-вот, в эти грабли никто не верит, пока сам не наступит. Согласна со всеми предыдущими ораторами, говорившие о сложности слежения за изменением глобальных переменных. Что касается квалификации программистов, которые "не могут этого отследить" - им что, больше делать нечего, кроме как за другими (или за собой) г. убирать? -------------------- ... |
|||
|
||||
| Rickert |
|
|||
|
Ситхи не пройдут! ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 3356 Регистрация: 11.7.2006 Где: Лакрима Репутация: 0 Всего: 52 |
Ну вообщем, я не собираюсь тратить время и доказывать свою точку зрения людям, которые принципиально не хотят "слазить с насиженного". Всем удачи
-------------------- Ни что не внушает сна крепче, чем день приисполненный трудов! |
|||
|
||||
| Lazin |
|
||||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 3820 Регистрация: 11.12.2006 Где: paranoid oil empi re Репутация: 41 Всего: 154 |
с глобальными переменными (и синглтонами) есть еще одни грабли... (наступал лично
пусть есть глобальная переменная для записи данных в лог - CLogger Log; и есть еще одна глобальная переменная, нужная для того что-бы что- то проинициализировать...
я как-то раз по наивности добавил в конструктор этого объекта вывод в лог
последствия были плачевны, так-как переменная Log еще не была создана во время создания переменной wsock_inst... да нет никакого табу... |
||||
|
|||||
| SABROG |
|
|||
![]() Hacker ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 2481 Регистрация: 18.9.2006 Репутация: 4 Всего: 91 |
Это наверно косяк проектирования, т.е. надо в нужной последовательности все инициализировать, где нить сразу после main или в конструкторе класса главного окна |
|||
|
||||
| bsa |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 9185 Регистрация: 6.4.2006 Где: Москва, Россия Репутация: 63 Всего: 196 |
SABROG, вся прелесть глобальных объектов в том, что неизвестно в какой последовательности они инициализируются.
Синглтоны призваны решить эту проблему. Подобные классы нужно инициализировать не глобально (у них же есть статический метод, доступный отовсюду), а в main() например, и в требуемой последовательности. Это позволяет вообще отказаться от глобальных переменных. |
|||
|
||||
| Alek86 |
|
|||
|
Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1299 Регистрация: 30.1.2007 Где: Киев Репутация: 21 Всего: 25 |
зачем в последовательности? вся прелесть синглтона в том, что вообще о последовательности думать не нужно. "вызываешь" переменные через функции, и все. Что еще не инициализированно на тот момент и тебуется, само проинициализируется... |
|||
|
||||
| SABROG |
|
||||
![]() Hacker ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 2481 Регистрация: 18.9.2006 Репутация: 4 Всего: 91 |
Ну значит у Lazina синглтон не правильно построен, насколько я помню там вызов всех методов таким образом происходит:
Где Instance() как раз инициализирует новый экземпляр класса и возвращает указатель, либо использует старый, если инициализация уже где-то была. |
||||
|
|||||
| MAKCim |
|
||||
![]() Воін дZэна ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 5644 Регистрация: 10.12.2005 Где: Менск, РБ Репутация: 52 Всего: 207 |
засчет чего? Earnest тут права, суть одна и та же
с функциями доступа в любой ситуации без - аналогичны глобальным переменным -------------------- Ах, у елі, ах, у ёлкі, ах, у елі злыя волкі © |
||||
|
|||||
| Lazin |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 3820 Регистрация: 11.12.2006 Где: paranoid oil empi re Репутация: 41 Всего: 154 |
у меня там только глобальные переменные, никаких синглтонов)) если-бы log был синглтоном то да, такой проблемы-бы не возникло... |
|||
|
||||
| Alek86 |
|
||||
|
Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1299 Регистрация: 30.1.2007 Где: Киев Репутация: 21 Всего: 25 |
в смысле, если в классе Globals приватный статик, который имеет функцию доступа, то он хуже глобальной переменной? Добавлено @ 12:24 где траву берешь? ;) Добавлено @ 12:26 ты же говорил
чето я не врублюсь - наверна выспаться нужно Это сообщение отредактировал(а) Alek86 - 17.3.2008, 12:27 |
||||
|
|||||
| MAKCim |
|
|||
![]() Воін дZэна ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 5644 Регистрация: 10.12.2005 Где: Менск, РБ Репутация: 52 Всего: 207 |
давай определимся, что значит хуже я говорю с позиции производительности Могилевская 5/1/50 -------------------- Ах, у елі, ах, у ёлкі, ах, у елі злыя волкі © |
|||
|
||||
| Alek86 |
|
|||
|
Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1299 Регистрация: 30.1.2007 Где: Киев Репутация: 21 Всего: 25 |
а я говорю с позиции нормального компилятора, который мелкие функции (делегирование и т.п.) инлайнит если кто-то использует допотопный компилер (и он не догадается при этом поставить inline), то у него будет 0,1% уменьшение поизводительности, но, поскольку их щас почти никто не использует... хотя, если юзать синглтон, то небольшое падение производительности будет но альтернатива - ипаться с временем жизни - имхо, хуже Это сообщение отредактировал(а) Alek86 - 17.3.2008, 12:44 |
|||
|
||||
| vinter |
|
|||
![]() Explorer ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 2735 Регистрация: 1.4.2006 Где: Н.Новгород Репутация: 13 Всего: 56 |
засчет не замещения глобальной статик члена - переменной, локальной и подавление проблем связанных с этим |
|||
|
||||
| bsa |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 9185 Регистрация: 6.4.2006 Где: Москва, Россия Репутация: 63 Всего: 196 |
А как удалять этот класс? ты об этом подумал? Или ты его не удаляешь? |
|||
|
||||
| SABROG |
|
||||
![]() Hacker ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 2481 Регистрация: 18.9.2006 Репутация: 4 Всего: 91 |
А для чего удалять синглтон ? Насколько я понимаю смысл в том, чтобы он "оживал" в момент старта программы и "помирал" при выходе. А там уже сама ОС его зарубит. Я правда не знаю вызовется ли деструктор в этом случае, не работал с синглтонами, паттерны проектирования для меня пока темный лес, как и вообще тема классов в целом. |
||||
|
|||||
| Lazin |
|
||||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 3820 Регистрация: 11.12.2006 Где: paranoid oil empi re Репутация: 41 Всего: 154 |
если-бы я в своем примере написал
то не факт что работало-бы, даже если-бы Log был реализован как синглтон Добавлено через 2 минуты и 3 секунды
кажется мы об одном и том-же))) вызывается, и если деструктор использует другой глобальный объект, то тут опять грабли)), почитать об этом можно у Александресску... |
||||
|
|||||
| archimed7592 |
|
||||||||
![]() Архимед ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 2531 Регистрация: 12.6.2004 Где: Moscow Репутация: 58 Всего: 93 |
Хорошо, я тебе верю, давай, действительно, взглянём на логику Для начала - ты говоришь, что занимался разработкой игр... Давай определимся, каких игр? Каков был их бюджет? Окупились ли они? И т.д. Ну а теперь о твоём основном аргументе: движок наше фсё! Отлично, возможно, движёк - это "нормальный"(в моём понимании), масштабируемый код. Ну и что? Давай проведём аналогию с областью прикладного ПО: для GUI-development есть такие "движки", как VCL, Qt, .NET WF и много других. Все они с некоторого ракурса - идеал того, как нужно "правильно проектировать и реализовывать". Теперь возмём отдельный движок: VCL. Моя личная оценка этого движка: твердая четвёрка(по пятибальной шкале), т.е. движёк очень даже хороший. И теперь скажи мне: что мешает разработчику реализовывать бизнес-логику аккурат в обработчиках событий? А ведь реализовывают... И потом такие продукты даже продаются... Теперь вернёмся обратно к КИ - по аналогии, каким бы ни был хорошим движок, саму игру можно реализовать в любом стиле. Почему реализовывают именно в плохом стиле я писал в предыдущих постах. Т.е., другими словами, движок - это лишь малая часть игры и это не аргумент в пользу качества кода самих игр.
Да дело не только в изменении переменных, опять же, прочитай мои предудущие посты. Кстати, а что, КИ разрабатывают команды из 1-2 разработчиков?
А нет никакого табу. [6.15], [6.16]
Логические умозаключения основанные на общение с несколькими разработчиками КИ, чтении форумов, посвящённых КИ и т.д.
Приватный статик = глобальная переменная с ограниченой видимостью, но, затем расширенной видимостью до глобальной. Т.о. не хуже, но и не лучше. -------------------- If you have an apple and I have an apple and we exchange apples then you and I will still each have one apple. But if you have an idea and I have an idea and we exchange these ideas, then each of us will have two ideas. © George Bernard Shaw |
||||||||
|
|||||||||
| Alek86 |
|
|||
|
Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1299 Регистрация: 30.1.2007 Где: Киев Репутация: 21 Всего: 25 |
про удаления как-то не задымывался - надо почитать...
лучше хотя бы тем, что легче отследить изменения в отладке. |
|||
|
||||
| MAKCim |
|
|||
![]() Воін дZэна ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 5644 Регистрация: 10.12.2005 Где: Менск, РБ Репутация: 52 Всего: 207 |
даже явный inline может не заставить компилятор заинлайнить функцию о чем можно здесь говорить? -------------------- Ах, у елі, ах, у ёлкі, ах, у елі злыя волкі © |
|||
|
||||
| Alek86 |
|
||||
|
Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1299 Регистрация: 30.1.2007 Где: Киев Репутация: 21 Всего: 25 |
можешь привести пример. когда компилер может незаинлайнить функцию доступа?
Это сообщение отредактировал(а) Alek86 - 17.3.2008, 13:50 |
||||
|
|||||
| bsa |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 9185 Регистрация: 6.4.2006 Где: Москва, Россия Репутация: 63 Всего: 196 |
Alek86
отключи оптимизацию и она не будет заинлайнена |
|||
|
||||
| MAKCim |
|
||||||
![]() Воін дZэна ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 5644 Регистрация: 10.12.2005 Где: Менск, РБ Репутация: 52 Всего: 207 |
пожалуйста
это GCC 4.1.2 без оптимизации -------------------- Ах, у елі, ах, у ёлкі, ах, у елі злыя волкі © |
||||||
|
|||||||
| Alek86 |
|
|||
|
Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1299 Регистрация: 30.1.2007 Где: Киев Репутация: 21 Всего: 25 |
за что платишь, то и получаешь...
извините уж, не стал ограждаться от подобных придирок и писать "в релизе с оптимизацией" |
|||
|
||||
| MAKCim |
|
|||
![]() Воін дZэна ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 5644 Регистрация: 10.12.2005 Где: Менск, РБ Репутация: 52 Всего: 207 |
Alek86,
понимаешь в чем тут дело оптимизация - это дело хорошее, но она нигде не специфицирована даже на уровне отдельно взятого компилятора да, есть некоторые общие правила, которые позволяют включать/выключать определенного рода оптимизации, но не более того мы не можем полагаться на то, что не специфицировано, в том числе на инлайнинг -------------------- Ах, у елі, ах, у ёлкі, ах, у елі злыя волкі © |
|||
|
||||
| JackYF |
|
|||
![]() полуавантюрист ![]() ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 5814 Регистрация: 28.8.2004 Где: страна тысячи озё р Репутация: 18 Всего: 162 |
ну, я тоже не могу полагаться на то, что завтра на меня не упадёт метеорит В общем, почитал я дискуссию. Основное правило у меня такое: глобальные переменные используются только при необходимости, в основном, когда их использование существенно влияет на скорость исполнения ключевых элементов программы. Но примеров таких мало. |
|||
|
||||
| MAKCim |
|
|||
![]() Воін дZэна ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 5644 Регистрация: 10.12.2005 Где: Менск, РБ Репутация: 52 Всего: 207 |
не верно я тебе даю 100% гарантию, что завтра на тебя метеорит не упадет угумс насчет примеров, посмотри код ядра Linux там глобальных переменных очень много это хоть и С, но все же -------------------- Ах, у елі, ах, у ёлкі, ах, у елі злыя волкі © |
|||
|
||||
| Alek86 |
|
|||
|
Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1299 Регистрация: 30.1.2007 Где: Киев Репутация: 21 Всего: 25 |
хоть ни в каком стандарте этого и не написано, да? (кстати, скорее 99,999999%-ю гарантию) както кощунственно, имхо, ориентироваться на человека (Торвальдса) который почем зря материт (в прямом смысле этого слова) C++ кстати, интересно, он в памяти хранит все взаимосвязи и места изменения глобальных переменных в ядре? или на бумажке рядом? Это сообщение отредактировал(а) Alek86 - 17.3.2008, 17:41 |
|||
|
||||
| MAKCim |
|
||||
![]() Воін дZэна ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 5644 Регистрация: 10.12.2005 Где: Менск, РБ Репутация: 52 Всего: 207 |
почему не написано? метеорит ниоткуда появится не может, правильно? если бы была потенциальная опасность для Земли, это было бы всем известно причем известно не за один день до столкновения отсюда вывод: гарантия 100%
никогда об этом не читал буду благодарен за ссылку
зачем что-то хранить? тут принцип простой либо данные полностью безопасны в плане доступа к ним (например per-cpu или атомарные данные), либо они защищены семафором/мьютексом/rw-блокировкой/... -------------------- Ах, у елі, ах, у ёлкі, ах, у елі злыя волкі © |
||||
|
|||||
| SABROG |
|
|||
![]() Hacker ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 2481 Регистрация: 18.9.2006 Репутация: 4 Всего: 91 |
Кстати тоже хочу ссылку, где Линус материт C++. Интересно какой бы язык программирования он тогда выбрал.
Жители Припяти тоже давали 100% гарантию, что завтра они никуда не собираются уезжать, но ЧАЭС распорядилась по-другому. Это сообщение отредактировал(а) SABROG - 17.3.2008, 18:12 |
|||
|
||||
| MAKCim |
|
|||
![]() Воін дZэна ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 5644 Регистрация: 10.12.2005 Где: Менск, РБ Репутация: 52 Всего: 207 |
не надо сравнивать падение метеорита и аварию на АЭС метеорит в отличие от аварии асинхронно упасть не может -------------------- Ах, у елі, ах, у ёлкі, ах, у елі злыя волкі © |
|||
|
||||
| bsa |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 9185 Регистрация: 6.4.2006 Где: Москва, Россия Репутация: 63 Всего: 196 |
MAKCim, метеориты бывают разных размеров. Причем, далеко не все, долетающие до земли, могут быть зафиксированы заранее.
|
|||
|
||||
| Alek86 |
|
|||
|
Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1299 Регистрация: 30.1.2007 Где: Киев Репутация: 21 Всего: 25 |
не помню, честно говоря, где именно с "плохими словами"
для начала можно поискать в гугле по строке: "C++ is a horrible language" |
|||
|
||||
| SABROG |
|
||||||||
![]() Hacker ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 2481 Регистрация: 18.9.2006 Репутация: 4 Всего: 91 |
Пора статью писать на тему "Что общего между C++ и метеоритами" Вот, что Лайнус пишет, если кто переведет смысл буду благодарен:
Ицточнег: http://thread.gmane.org/gmane.comp.version...643/focus=57918 git - программа контроля версий типа cvs и subversion VCS - version control service/server Я так понял git написан на чистом Си, а C++ ему не нравится из-за навороченности с ООП и еще речь о каких-то крашах непонятных, говорит хотите систему контроля версий написанную на C++ со всякими stl, boost'aми и т.д. юзайте monotone (еще одна cvs). Грубо говоря ассемблер это наше всё
Упс И Jav'e досталось
Это сообщение отредактировал(а) SABROG - 17.3.2008, 18:58 |
||||||||
|
|||||||||
| archimed7592 |
|
||||
![]() Архимед ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 2531 Регистрация: 12.6.2004 Где: Moscow Репутация: 58 Всего: 93 |
SABROG, он пишет, почему он выбрал именно Си для реализации Git(IIRC, дело было в 2005).
Переведу только одно предложение, наиболее резко и лаконично показывающее отношение Линуса к С++
Это сообщение отредактировал(а) archimed7592 - 17.3.2008, 19:01 -------------------- If you have an apple and I have an apple and we exchange apples then you and I will still each have one apple. But if you have an idea and I have an idea and we exchange these ideas, then each of us will have two ideas. © George Bernard Shaw |
||||
|
|||||
| MAKCim |
|
|||
![]() Воін дZэна ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 5644 Регистрация: 10.12.2005 Где: Менск, РБ Репутация: 52 Всего: 207 |
забавно
-------------------- Ах, у елі, ах, у ёлкі, ах, у елі злыя волкі © |
|||
|
||||
| Earnest |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 5962 Регистрация: 17.6.2005 Где: Рязань Репутация: 53 Всего: 183 |
MAKCim, возвращаясь к глобальным переменным и производительности.
Конечно, трудно спорить, что компилятор может, но не обязан встроить обращение к глобальной переменной через функцию, и если он этого не сделает, то обращение через функцию медленнее. Но, на практике, когда это критично? Если есть какой-то критичный кусок кода, изобилующий обращениями к какому-то синглетону (в цикле, например), что, религия запрещает скопировать ссылку в авто-переменную? А в остальных случаях разница нечувствительна. -------------------- ... |
|||
|
||||
| JackYF |
|
|||
![]() полуавантюрист ![]() ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 5814 Регистрация: 28.8.2004 Где: страна тысячи озё р Репутация: 18 Всего: 162 |
Ты не можешь мне дать 100%-ную гарантию ничего-либо, что ещё не произошло
Первый вывод неверен. Ты хочешь сказать, что вероятность неинформирования тебя об этом равна нулю? |
|||
|
||||
| vinter |
|
|||
![]() Explorer ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 2735 Регистрация: 1.4.2006 Где: Н.Новгород Репутация: 13 Всего: 56 |
кстати кто что думает об интервенции китайцев на Дальнем Востоке?
|
|||
|
||||
| MAKCim |
|
||||
![]() Воін дZэна ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 5644 Регистрация: 10.12.2005 Где: Менск, РБ Репутация: 52 Всего: 207 |
что делать в случае если он (объект, инкапсулированный в синглетон) будет уничтожен и локальная ссылка станет невалидной? Добавлено через 1 минуту и 6 секунд
думаю, да Добавлено через 2 минуты и 7 секунд
-------------------- Ах, у елі, ах, у ёлкі, ах, у елі злыя волкі © |
||||
|
|||||
| Mayk |
|
||||||
![]() ^аВаТаР^ сообщение>> ![]() ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 2616 Регистрация: 22.5.2005 Где: за границей разум а Репутация: 45 Всего: 134 |
синглтоны тоже не люблю. Люблю обратную инициализацию. Или как там этот паттерн называется:
Вместо
делать
Программисты настолько слабы что не могут держать в памяти всё и вся. Если программа начинает не вмешацца на экран --- ОЙ. -------------------- Здесь был кролик. Но его убили. Человеки < кроликов, йа считаю. |
||||||
|
|||||||
| Earnest |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 5962 Регистрация: 17.6.2005 Где: Рязань Репутация: 53 Всего: 183 |
Решать проблемы по мере поступления. Использование глобальной переменной здесь тоже не поможет. Если объект может исчезнуть, когда ему приспичит, нужно принимать адекватные меры - ссылки считать, например. Добавлено через 2 минуты и 44 секунды Mayk, дык твой вариант подлиннее получается - за шо ж его любить? Синглетоны, конечно, не панацея от всего, как и все остальное, впрочем. Каждому сверчку - по шестку. -------------------- ... |
|||
|
||||
| MAKCim |
|
|||
![]() Воін дZэна ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 5644 Регистрация: 10.12.2005 Где: Менск, РБ Репутация: 52 Всего: 207 |
вот пример
в some actions может идти, например, вызов функций, одна из которых удаляет variable (или реинициализирует (delete + new), или еще что-нибудь в этом роде) программа однопоточная -------------------- Ах, у елі, ах, у ёлкі, ах, у елі злыя волкі © |
|||
|
||||
| SABROG |
|
|||
![]() Hacker ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 2481 Регистрация: 18.9.2006 Репутация: 4 Всего: 91 |
Если возвращаться к теме об интервенции китайцев на дальнем востоке, то ради любопытства хотелось бы узнать как переводится слова "foo", "bar" и "foobar", гугл транслейт отжигает: "фоо", "бар". |
|||
|
||||
| MAKCim |
|
|||
![]() Воін дZэна ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 5644 Регистрация: 10.12.2005 Где: Менск, РБ Репутация: 52 Всего: 207 |
-------------------- Ах, у елі, ах, у ёлкі, ах, у елі злыя волкі © |
|||
|
||||
| SABROG |
|
|||
![]() Hacker ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 2481 Регистрация: 18.9.2006 Репутация: 4 Всего: 91 |
Спс, жалко там так и не написали "откуда есть пошла русская земля". А вообще странное у американцев понятие слова "хакер", для них это каста программистов фанатиков, а не отряд бойцов дельфистов выпущенных МГУ. У нас же это человек обязательно нарушающий статьи 272, 273 Это сообщение отредактировал(а) SABROG - 18.3.2008, 23:46 |
|||
|
||||
| bsa |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 9185 Регистрация: 6.4.2006 Где: Москва, Россия Репутация: 63 Всего: 196 |
http://ru.wikipedia.org/wiki/Хакер Это не у американцев странное, а у нас благодаря серости журналистов. Помню еще батя говорил мне года эдак 20-22 назад, что мечтает, чтобы я стал хакером (потому что это "высшая каста")... И об уголовщине речи вообще не шло (мне было лет 5-7). Это сообщение отредактировал(а) bsa - 19.3.2008, 00:31 |
|||
|
||||
| archimed7592 |
|
|||
![]() Архимед ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 2531 Регистрация: 12.6.2004 Где: Moscow Репутация: 58 Всего: 93 |
Об чём угодно(и метеориты и вероятностная модель и foobar и хакеры), только не о глобальных переменных
-------------------- If you have an apple and I have an apple and we exchange apples then you and I will still each have one apple. But if you have an idea and I have an idea and we exchange these ideas, then each of us will have two ideas. © George Bernard Shaw |
|||
|
||||
| MAKCim |
|
|||
![]() Воін дZэна ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 5644 Регистрация: 10.12.2005 Где: Менск, РБ Репутация: 52 Всего: 207 |
archimed7592,
все теперь любой оффтоп будет караться -------------------- Ах, у елі, ах, у ёлкі, ах, у елі злыя волкі © |
|||
|
||||
| nerezus |
|
||||||
![]() Вселенский отказник ![]() ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 3330 Регистрация: 15.6.2005 Репутация: 3 Всего: 43 |
Причем работает сама(без вмешательства пользователя). Т.е. ни за что мы получаем ОЖИДАЕМУЮ оптимизацию.
P.S. Не вижу абсолютно никакого смысла в глобальных переменных. Ибо ООП. Однако не вижу ничего плохого в их использовании(использую сам в движке своем, не завожу класс конфига, к примеру) |
||||||
|
|||||||
| UnrealMan |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 722 Регистрация: 30.3.2006 Репутация: 27 Всего: 32 |
||||
|
||||
| bsa |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 9185 Регистрация: 6.4.2006 Где: Москва, Россия Репутация: 63 Всего: 196 |
||||
|
||||
| UnrealMan |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 722 Регистрация: 30.3.2006 Репутация: 27 Всего: 32 |
Что это - глобальная статическая константа? |
|||
|
||||
| archimed7592 |
|
|||
![]() Архимед ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 2531 Регистрация: 12.6.2004 Где: Moscow Репутация: 58 Всего: 93 |
А зачем её быть статической? Она что, только в мат. модуле используется?
-------------------- If you have an apple and I have an apple and we exchange apples then you and I will still each have one apple. But if you have an idea and I have an idea and we exchange these ideas, then each of us will have two ideas. © George Bernard Shaw |
|||
|
||||
| bsa |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 9185 Регистрация: 6.4.2006 Где: Москва, Россия Репутация: 63 Всего: 196 |
Думаю, чтобы заставить компилятор соптимизировать код |
|||
|
||||
![]()
|
| Правила форума "С++:Общие вопросы" | |
|
|
Добро пожаловать!
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Earnest Daevaorn |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | C/C++: Общие вопросы | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |