- 1
- 2
- 3
- 4
- 5
- 6
- 7
typedef SmartPtr<CallRec> callptr;
callptr *m_call;
if (m_call && (*m_call) && (*m_call)->SomeMethod()) {
// ...
}
Нашли или выдавили из себя код, который нельзя назвать нормальным, на который без улыбки не взглянешь? Не торопитесь его удалять или рефакторить, — запостите его на говнокод.ру, посмеёмся вместе!
+7
typedef SmartPtr<CallRec> callptr;
callptr *m_call;
if (m_call && (*m_call) && (*m_call)->SomeMethod()) {
// ...
}
GnuGK и смартпоинтеры.
chtulhu 06.06.2014 13:57 # +8
Говнокод перешал под крыло GNU?
roman-kashitsyn 06.06.2014 14:48 # +6
программисты индиректили индиректили да не выиндиректили
Soul_re@ver 06.06.2014 15:16 # +1
А то я видел подобное. Гениальная причина: «а он по-другому не копируется»
bormand 06.06.2014 16:06 # 0
Строки 71-93.
В общем это boost::intrusive_ptr<T>.
bormand 06.06.2014 16:07 # +2
orion 06.06.2014 16:16 # 0
1024-- 06.06.2014 16:17 # +3
Xom94ok 06.06.2014 18:55 # +1
Dummy00001 07.06.2014 13:19 # +1
Страуструп в крестах <%/%>/and/or/etc не от хорошей жизни ввел. На его родной датской клаве до многих символов добиратся не легко. Та же фигня на французской клаве и в какой-то степени на немецких клавах.
3.14159265 07.06.2014 14:00 # +3
Да что Вы - кресты один из самых перегруженных значками и символами языков.
Вообще я сильно сомневаюсь что программы там пишутся на датском, думаю у большинства кодеров в мире стандартная английская раскладка.
Dummy00001 07.06.2014 14:31 # +2
Нет. На европейских клавах буквы в других местах находятся. Как в той же немецкой - Z vs. Y. И у кнопок слева (между буквами и Enter'ом) другая физическая форма: для тех кто печатает в слепую это большая проблема. Поэтому для большинства англиская раскладка так же трудна как и нативная.
3.14159265 07.06.2014 14:35 # +2
А сам при этом давно не пишет ничего.
~!%^&*() ?: [] {} ;<> - все эти значки используются по несколько раз.
Кстати надо бы еще $зазаюзать, что поставит его в один ряд с такими чудесными языками как рнр и баш.
Dummy00001 07.06.2014 14:40 # 0
В крестах он только попытался облегчить проблему, унаследованую из С.
Те же грабли - с теми же символами - и в жабе и жабоскрипте.
Да и на англиской клаве это всего лишь "лучше" а не "прекрасно". Как по мне, это и есть причина почему народ пытается постоянно языки изобрести в которых {} и () не совсем не используются.
3.14159265 07.06.2014 14:56 # 0
Ну не надо.
# которую я кстати забыл там нет.
* и & там означают ТОЛЬКО умножение и операцию И.
~ означает ТОЛЬКО побитовое отрицание, а не деструктор
[] означают ТОЛЬКО массив/мапу, а не лямбды
: использовалось ТОЛЬКО в тернарнике, а не наследование, неймспейс, после public, private
Про то что могут означать в ерстах фигурные скобки вообще молчу
И наконец самое главное - в этих языках нельзя определить поведение этих значков для своих структур, ибо там нету перегрузки операторов.
eth0 08.06.2014 18:49 # +1
Я, например, в таком случае посчитал бы частоты используемых символов, и для наиболее частых ввёл бы более короткие или удобные операторы.
Например, очевидно, что [] набирается гораздо быстрее и удобнее, но требуется реже, чем {}, так что вполне квадратные скобки можно оставить для блоков кода, фигурные - для всего остального.
bormand 08.06.2014 20:13 # 0
Так вот кто придумал TCL...
eth0 09.06.2014 20:52 # 0
bormand 07.06.2014 14:53 # +1
gcc позволяет его юзать в именах:
bormand 07.06.2014 14:52 # 0
Хм, то есть получается, что нам, русским, очень повезло, что буквы не влезли, и вместо натягивания ужа на ежа сделали кошерную отдельную раскладку ;)
Dummy00001 07.06.2014 14:58 # 0
В штатах к слову две раскладки: ISO и ANSI. Типичная (с прямоуголным Enter'ом) это ANSI. ISO почти никто не пользуется, но она есть.
wvxvw 07.06.2014 16:17 # +1
Xom94ok 07.06.2014 18:10 # +1
http://preview.tinyurl.com/noy5k36
А то этот бекслэш куда только не пихуют. То бекспейс укоротят, то энтеру левую пипку отрежут. Или вообще с левым шифтом поселят (НЕНАВИСТЬ!!!1).
bormand 07.06.2014 18:56 # 0
Ноутовские же клавы уёбищны по определению, хоть внешнюю подключай :(
Походу если я и буду покупать ноут - то насру на все ТТХ, лишь бы клава была удобная и корпус и экран не глянцевые...
kegdan 07.06.2014 19:03 # +1
1 удобнее
2 продлевает жизнь ноутбучной клаве (ибо внешнюю не всегда с собой потаскаешь)
С экраном согласен, а вот какой корпус мне все равно.
brutushafens 07.06.2014 19:11 # +2
kegdan 07.06.2014 19:16 # 0
мне кажется ты уже это спрашивал раз 5
brutushafens 07.06.2014 19:45 # +1
kegdan 07.06.2014 19:52 # 0
brutushafens 07.06.2014 20:09 # +1
eth0 08.06.2014 18:53 # 0
Слишком общее утверждение. Мне, кроме всего прочего, пришлось потусить в среде ремонтников железа, ну и соответствующие навыки и познания пришли. Последние три залитых ноута, которые приносили коллегам, отделались именно клавиатурой, потому что в них была специальная полость, в которой кроме клавиатуры и шлейфа ничего не было.
Правда, стоит отметить, что пива не видел с 2012-го, обычно это чай, жидкость для снятия макияжа (адово воняет) или сок.
1024-- 07.06.2014 19:35 # 0
А мне как-то смешно стало. Всё же, не на столь долгий срок берут ноутбуки, чтобы за клавиатуру в этом смысле волноваться. Не понимаю я этого.
Такие размышления присущи скорее более старому поколению, выбирающему ноутбук на ближайшие 10-20 лет.
P.S. Но клавиатуру на нетбуке сам "исписал" и менял, уж очень привык к ней, из-за этого теперь на нормальных больших клавиатурах пальцы проваливаются.
> какой корпус мне все равно.
Желательно, чтобы края были максимально гладкие. Острые края обдираются месяца за три.
kegdan 07.06.2014 19:38 # 0
У меня знакомый клаву за год разьебал. Да и кофе фатально - лучше уж на внешнюю прольется.
1024-- 07.06.2014 19:45 # 0
kegdan 07.06.2014 19:50 # 0
3.14159265 07.06.2014 21:23 # 0
БратПроц жив?
1024-- 08.06.2014 09:12 # 0
Xom94ok 07.06.2014 21:17 # 0
> лишь бы клава была удобная и корпус и экран не глянцевые
"Собрались как-то при полной луне на кладбище главы всех производителей ноутбуков и, совершив жертвоприношения, поклялись никогда не выпускать ноутбуки с матовыми мониторами и полноценными клавиатурами" - актуальная адаптация одного анекдота про нормально открывающиеся упаковки сахара-рафинада :)
> на одной выпилили insert, поставив вместо него delete на джве клетки высотой
На моей работе есть две такие. Какое странное совпадение...
1024-- 08.06.2014 09:16 # +3
Оказалось, что Xom94ok и bormand давно работают вместе, но разговаривали друг с другом только на ГК.
3.14159265 07.06.2014 21:21 # 0
Просто не буду покупать ноут.
А если и буду, подключу отдельную клаву, и отдельный большой монитор.
bormand 07.06.2014 21:31 # +1
Ну я возьму только если жизнь заставит таскать его с собой по командировкам и т.п. Причем, скорее всего, самую бюджетную и дешевую модельку, чтоб не жалко угробить/потерять...
А дома ноут, имхо, нинужен. Гробик под столом в любом случае удобней, шустрее и дешевле.
kegdan 07.06.2014 21:53 # 0
brutushafens 07.06.2014 21:56 # +2
kegdan 07.06.2014 22:04 # +1
сидит как то 15летный стетор с мужиками, а они ему после гомосексуальной педофилии и говорят...
brutushafens 07.06.2014 22:08 # +1
kegdan 07.06.2014 22:11 # 0
сли тебе требовалась стойкость, что бы не дать в очко - это что нибудь да значит
brutushafens 07.06.2014 22:14 # +1
3.14159265 07.06.2014 22:31 # +1
Само собой логично использовать ноут для тех целей, для которых он предназначен.
>А дома ноут, имхо, нинужен.
Понятное дело.
Просто уже лет 5 как пошла дичайшая мода брать ноут для дома. И десктопу постоянно пророчат смерть. Это печально.
А вот отчасти отголосок этой моды - хасвелл, с безусловно новыми, революционными концептами, но средненькой встроенной графикой (та что получше и вовсе впаивается в плату), низким энергопотреблением, и при этом небольшим ростом скорости числодробления. Всё это чисто ноутбучное.
1024-- 08.06.2014 09:36 # +1
* занимает мало места: мало поверхностей для протирания пыли, легко убрать в шкаф и освободить стол, если понадобится место
* в течение дня можно несколько раз переползти в другую комнату
* потребляет меньше энергии (любители игр всегда могут иметь стационарный компьютер, который будет греться только во время игр)
А если привыкнуть к клавиатуре (скажем, выбрать серию ноутбуков, которую ещё будут выпускать - чтобы не переучиваться потом), и если работа/учёба/стиль жизни позволяет, можно таскать везде и всегда иметь актуальное состояние работы, правильно расположенные значки и каталоги, настроенные горячие клавиши, полный контроль над системой, ...
Жду моды на док-станции. Принёс ноутбук, воткнул дома - получил доступ к сети, жёсткий диск с фильмами, монитор, колонки; воткнул на работе - получил три монитора, доступ к базам и клавиатуру; воткнул в лесу - получил чемодан с аккумуляторов на 2 дня.
bormand 08.06.2014 10:40 # +2
Внезапно, но моник и клава занимают меньше ;) И клаву можно положить как удобно, а моник поставить на удобной для глаз высоте и расстоянии...
Насчет энергопотребления - нынче гробы не так уж и много жрут.
Ах да, ноуты еще и греются и шумят больше из-за хренового теплоотвода. У меня вот на проце комнатная температура почти всегда, и тишина т.к. кулер большой. Разгоняется разве что в самых современных гамах и на конвертации видео.
1024-- 08.06.2014 11:17 # 0
Скоро не будут. Какой-нибудь ультрабук с заниженным хасвелловским i7 при малой загрузке или в режиме экономии энергии скорее всего будет тихим и прохладным.
А вообще, надо искать свой идеал. У меня есть пример ноутбука (до 100Вт), который при 100% загрузки одного ядра шумит и греется, и пример (20-25Вт), когда замечаешь, что что-то тихонько шуршит - а это оказывается кто-то завис и уже час занимает одно-два ядра.
eth0 08.06.2014 18:59 # 0
Только для ненапряжного потребления лёгкого контента. Пейсбук почитать, фильм посмотреть, пасьянс сложить.
Если требуется значительная вычислительная мощь, то тут и трёх титанов в SLI не хватит, а они ещё не научились физику обманывать.
defecate-plusplus 08.06.2014 12:05 # +1
кто мешает иметь и то и то
иногда хочется и сидеть, а иногда - лежать
при этом мой гробик под столом шумит прилично (тем самым жену будит), а ноут в 99% времени даже свой бесшумный кулер не включает
3.14159265 08.06.2014 12:54 # 0
А говорилось же - не разгоняй.
Так там же целых 20% на халяву!!!
defecate-plusplus 08.06.2014 13:12 # +1
блядский жужжащий говнокулер на видеокарте амд
да и всё старье, менять пора
brutushafens 08.06.2014 19:17 # +1
defecate-plusplus 08.06.2014 19:47 # 0
моя видюха-пылесос требует полного разбора, чистки и обновления термопасты не реже чем раз в полгода-год, иначе начинает реветь даже при легких нагрузках
bormand 08.06.2014 20:21 # 0
А мне с последней видюхой всё-таки повезло - два больших и тихих кулера (twin frozr). На холостом режиме вообще молчат. Да и под нагрузкой звук комфортный, не воющий. Х.з. как оно будет дальше, но первый год продержалось, только пыль выдувал из нее.
А вот предыдущая зато любила повыть... А до нее была ATI'шка с пассивкой, к которой летом приходилось вешать кулер, и которая через год тупо сдохла от тепловой деформации платы.
defecate-plusplus 08.06.2014 20:28 # 0
только хардкор
но подводит блядский интел
всё никак не выпустит платформу с ddr4
сейчас бессмысленно покупать новый комп - он будет заведомо старый в ближайшие 2 года
кстати, в т.ч. и видюхи - пусть устаканятся технологии вывода ultrahd 4k на комфортной частоте (а не @24Hz)
bormand 08.06.2014 20:38 # +1
Дык за 3-4 года комп почти всегда превращается в морально устаревшую тыкву, и менять приходится весь комплект из материнки/памяти/проца/видяхи :(
Апгрейдился я в прошлом году, так что пару лет подождать до ddr4 и новых сокетов - вполне терпимо.
eth0 09.06.2014 20:54 # +3
Более того, чтобы угнаться за прогрессом, нужно бежать как минимум вдвое быстрее.
wvxvw 07.06.2014 21:15 # 0
http://www.ideastorm.com/servlet/rtaImage?eid=087700000008YKo&feoid=Body& refid=0EM70000000PCSX
3.14159265 07.06.2014 14:45 # +2
А это его стиль решения любых крестопроблем языка.
Вот у нас есть сишные &&, || а вот есть понятные AND и OR, а чего выбирать? Давайте запилим оба!
Это еще Дональд Кнут подметил:
Whenever the C++ language designers had two competing ideas as to how they should solve some problem, they said, "OK, we’ll do them both".
Dummy00001 07.06.2014 14:52 # 0
Правильно. Разрабам давать выбор? Они же как школота! Сами не знают что делают!!
Много языков которые пытались переизобрести синтакс обломались и вымерли.
Много языков которые открыто ставили целью уменьшить набор инструментов разраба что бы уменьшить количество ошибок - либо вымерли либо сменили курс.
wvxvw 07.06.2014 16:23 # +2
- ж.скрипт - максимально убогая стандартная библиотека, отсутствие классов (и не надо рассказывать про то, что они там есть, Ейк говорит, что нету) как примеры.
- Хаскель - сознательно запрещены побочные эффекты, функции как объекты.
- Ява - намерено запрещена прямая работа с памятью, функции и переменные не-методы / поля классов.
Dummy00001 07.06.2014 16:28 # +1
ЗЫ хаскель и побочные эффекты. мне всегда казалось что отсутствие побочных эффектов это черта функциональных языков, а не черта конкретного языка?
3.14159265 07.06.2014 16:35 # 0
3.14159265 07.06.2014 14:14 # 0
Правильно сделали в go - убрали точки с запятой и заставили всегда писать на блоке фигурные скобки .
Чтобы люди не высирали вот такие "интересные конструкции".
А потом сиди и думай какой же у неё сайд-эффект или жди когда оно жахнет.
laMer007 06.06.2014 18:31 # 0
bormand 06.06.2014 19:25 # 0
Ну в самом SmartPtr<T> вроде бы все норм.
А вот в с CallRec::Lock и CallRec::Unlock у них замутно получается. Там потом цикл выгребает все записи в табличке, у которых счетчик обнулился и удаляет их. Х.з., зачем так. Все равно объект после последнего Unlock'а уже не нужен, и можно сразу же его вынести... Хотя, может быть, я какую-то тонкость не понимаю...
Elvenfighter 07.06.2014 09:49 # 0
bormand 06.06.2014 16:14 # 0
roman-kashitsyn 06.06.2014 17:00 # +3
TarasB 07.06.2014 12:15 # +1
brutushafens 07.06.2014 12:20 # −1
DlangGovno 07.06.2014 12:31 # +1
Поищи еще, например, иерархию наследования для PString