1. VisualBasic / Говнокод #15275

    −98

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    ResetList( Chars( ) )
    While NextElement( Chars( ) )
    	Define Address.l = @Chars( )
    	Define Reference.s = Chars( )
    	While NextElement( Chars( ) )
    		If Chars( ) = Reference
    			DeleteElement( Chars( ) )
    		EndIf
    	Wend
    	ChangeCurrentElement( Chars( ), Address )
    Wend

    Запостил: Stertor-, 01 Марта 2014

    Комментарии (83) RSS

    • > Stertor-
      А царь то ненастоящий.
      Ответить
    • Удалите эту тему. Пожалуйста.
      Ответить
      • Что за хрень творится? Сначала факел перешёл к пользователю Stertor-, а у Stertorа аватарка отключилась, а теперь наоборот - у псевдостертора пусто, у настоящего - факел.
        Это самопиар за счёт имитации подражания, или где-то в коде граватара прописана уникальность картинки?
        Ответить
        • Я временно убрал иконку - чтобы товарищи увидели разницу,- потом снова поставил. Это не я. Честно.
          Ответить
          • пиздабол, пиарится на школосайте
            Ответить
          • А не надо убирать. Стертора с минусом можно отличить (это же сайт программистов, тут каждая запятая на счету). Да он ещё сразу виден по "интеллектуальности" постов.
            К тому же, выходит, смена аватарки вызывает смену её у подражателя, когда он обнаруживает отличие. А это мигание только усиливает неразбериху.
            В общем, лучше оставаться собой, а оно само уйдёт.
            Ответить
            • ты путаешь, это сайт быдло-кодэров
              Ответить
              • Тогда тем более отличат. Быдлокод хуже читается, быдлокодеру приходится каждый день видеть кривой и нелогичный код, он наизусть знает все различия между I, l, | и 1, быдлокодер это умение годами оттачивает, это его работа.
                Ответить
                • >он наизусть знает все различия между I, l, | и 1
                  Это в какой иде не видно разницы?
                  Ответить
                  • > Это в какой иде не видно разницы?
                    Точно не скажу.
                    Но ещё зависит от размера шрифта. Чем он меньше, тем меньше детализация + больше кода, который отвлекает.
                    У меня в notepad++ l и 1 очень похожи, пока не включишь подсветку синтаксиса. А вот I и l отличаются на одну закорючку и разными цветами не красятся, можно и перепутать.
                    Ответить
                    • шрифт хотя бы Consolas?
                      не понимаю, как люди всё ещё не слепнут от Courier
                      Ответить
                      • Courier New

                        > не понимаю, как люди всё ещё не слепнут от Courier
                        действительно, выглядит жутко

                        Поставлю-ка Consolas на несколько дней и проверю, проведу эксперимент.

                        После Courier New на первый взгляд выглядит как-то по-книжному. Код на плюсах похож на стихи, код на JS выглядит как полное говно (может, JS-хейтерам надо просто сменить шрифт?). С "квадратным" Courier New код был похож на код и визуально отличался от текста. А тут буквы слишком толстые и "витые".
                        Ответить
                        • даёшь щревто-холивар!
                          droid sans mono!
                          Ответить
                          • > droid sans mono
                            Ну не знаю, угловатый он для меня. Мне больше нравятся более округлые шрифты. Consolas на винде меня вполне устраивает. В линупсе я периодически переключаюсь между DejaVu Sans Mono (и производными) и Ubuntu Mono, остальное совсем не доставляет. В жабьей intellij idea всё кроме встроенного Source Code Pro выглядит как говно из-за чрезмерно агрессивного неотключаемого хинтинга.
                            Ответить
                            • в Consolas высота строчных букв не устраивает, слишком мелко
                              по сравнению с дроидом
                              когда не было ещё всяких этих дроидов, консоласов, то юзал люсиду вместо богомерзкого курьера
                              Ответить
                              • Люсида хороша. Ей (если я правильно определил на глаз) набран код в книжке Армстронга Programming Erlang, довольно приятно глазу.

                                P.S. Кстати, не пробовал MacType? Судя по скринам, он рвёт ClearType как тузик грелку.
                                Ответить
                          • >даёшь щревто-холивар!
                            Линупс онли? Не кроссплатформенно.
                            Ответить
                            • droid sans вполне есть и под винду. Я даже попытался его подключить, но из-за вендосглаживания у меня получилось мыльцо
                              Ответить
                              • Нет, холивор линупс онли, у остальных этот вопрос не вызывает такого жжения, особенно на семерке с нормальным cleartype.
                                Ответить
                                • > линупс онли
                                  мне кажется, линупс тут скорее выдаёт "ценителей прекрасного", стремящихся всё сделать "чисто под сибя", отсюда и страсть к шрифтам. Виндопользователи часто даже не лезут в настройки шрифтов. Может, это и правильно.
                                  Мне вот лично виндузовый рендерер шрифтов не особо нравится, не хватает сглаживания. Маковский весьма хорош. Линупсячий тоже неплох.
                                  Ответить
                                  • > не хватает сглаживания
                                    А у виндузятников наоборот - они считают линупсрендер замыленным ;) Короче кто к чему привык, тому то и нравится.
                                    Ответить
                                    • >> не хватает сглаживания
                                      > А у виндузятников наоборот - они считают линупсрендер замыленным ;)
                                      По сравнению с XP шрифты в win7 кажутся жутким мылом. Тот самый notepad++, тот самый Courier New - под XP всё выглядит прилично, пиксель к пикселю, а под 7 - расплывшееся по экрану мыло.

                                      Может, и не зря тот юниксовый авторитет так хвалил хромбук, может там каждый символ занимает целое количество пикселей и не раздражает.
                                      Ответить
                                      • > Может, и не зря тот юниксовый авторитет так хвалил хромбук

                                        Возможно, он нахваливал его ещё и потому, что в хромбуке наверняка используется свежий Adobe CFF Rasterizer, дефолтный во FreeType с версии 2.5
                                        http://google-opensource.blogspot.ru/2013/06/youve-got-cff.html
                                        Меня теперь волнует только один вопрос: какого хрена прошёл уже почти год, а этот движок не дефолтный в моём линупсе?
                                        Ответить
                                  • >мне кажется, линупс тут скорее выдаёт "ценителей прекрасного", стремящихся всё сделать "чисто под сибя", отсюда и страсть к шрифтам.
                                    Тебе кажется

                                    >Виндопользователи часто даже не лезут в настройки шрифтов.
                                    У них и так все хорошо, зачем пердолиться? Вот на XP cleartype уебашный.

                                    >не хватает сглаживания.
                                    А cleartype это что?
                                    Ответить
                                    • самое странное - это то, что в тред ещё не засуммонился wvxvw
                                      поднаброшу, пожалуй http://images.damieng.com/blog/font-scaling.png
                                      Ответить
                                      • А он тут уже высказался, только не так длинно, как некоторые могли ожидать.
                                        Ответить
                            • > Линупс онли?
                              Самый обычный ttf, емнип.
                              Ответить
                              • В названии шрифта нет слов «Microsoft», «Monotype», «Arial», «Courier», «Times», значит, не под винду.
                                Ответить
                                • Lucida Console значит не под винду.
                                  Ответить
                                  • Console же. Значит, под консольку. Это наверное для того, чтобы старые досовские программы запускать.
                                    Ответить
                                • Толсто... Люсиду я даже рабочим шрифтом на смартфон ставил, взамен родного.
                                  Ответить
                          • >droid sans mono!
                            terminus же
                            Ответить
                          • хм, что это?
                            говно на говнокоде?
                            https://dl.dropboxusercontent.com/u/4275844/gcode.png (часть имени замаскировал)
                            Ответить
                            • Да, тоже замечал эту ерунду при отправке комментария.
                              Ответить
                            • Движок ГК отправляет уведомление автору топика и коммента. А в качестве мыла у лжестертора указана эта херня...
                              Ответить
                              • об этом я и сам догадался
                                > говно на говнокоде?
                                Ответить
                                • > говно на говнокоде
                                  Как вы лодку назовете, так она и поплывет.
                                  Ответить
                          • > щревто-холивар
                            Для просто текста - Linux Biolinum G
                            Ответить
                        • DejaVu Sans Mono
                          Ответить
            • Спасибо за совет. Я так и сделаю.
              Ответить
            • Там, постом выше, еще есть стертор с подчеркиванием.
              Ответить
              • Но он ещё больше отличается.
                Эх, опоздал он на несколько лет со своими играми.

                P.S. Идея для нового юзерскрипта: пользователь составляет список достойных людей, скрипт при визуальной схожести ников подсвечивает красным ники самозванцев.
                Ответить
                • Пойти что ли завести себе двойника, чтобы из-под его учетки поливать всех говном :)
                  Ответить
                  • пробуй братишка, нового опыта получишь
                    Ответить
                  • Привычка аргументировать таких двойников быстро выдаёт.
                    Ответить
                  • предлагаю более интересный ход: поливать говном самого себя ) тогда заступимся всем говнокодом )))
                    я когда-то так делал. не удивляйтесь, что почти все мои говнокоды набрали по -11.
                    Ответить
    • Товарищи, кто-нибудь может объяснить мне, исходя из чего указывают размер буфера, в который byref функция помещает результат? Возьмем GetPrivateProfileString - одним из ее параметров должен быть буфер, в который функция помещает результат - значение параметра ключа, в указанной секции. Но ведь заранее нельзя знать, какой будет длина значения?
      Ответить
      • > Но ведь заранее нельзя знать, какой будет длина значения?
        Это одно из основополагающих сишкоблядств :)

        - Либо ты юзаешь буфер достаточного размера (если ты знаешь ограничения на длину строки), и возвращаешь ошибку, если не влезло (в данном случае это можно определить, если результат == nSize - 1).
        - Либо ты юзаешь буфер некого размера, и увеличиваешь его, если функция вернула обрезанную строку (в данном случае это можно определить, если результат == nSize - 1).
        - Либо ты прекращаешь ебать мозг с api операционки, и юзаешь высокоуровневые функции, в которых все эти проблемы решили за тебя.

        Третий вариант - оптимальный ;)
        Ответить
        • Обычно 0 передаешь и тебе в ответ реальную длину вертают или буфер достаточного размера.
          Ответить
          • Ну это в нормальных функциях, где сигнализацию ошибки отделили от длины результата. В данном же случае - только угадывание, только хардкор.
            Ответить
          • Да, я знал это. Но гламурно ли будет два раза вызвать API? Это не ламерство?
            Ответить
          • я знал это. Но гламурно ли будет два раза вызвать API? Это не
            ламерство?

            Хотя нет - не ламерство. Так, для того, чтобы перед прочтением значения
            ключа в реестре узнать его тип (если наугад прочитать reg_sz как
            reg_dword- функция обрушит прогу), два раза подряд вызывают API, если не
            ошибасюь, RegQueryValueEx. В итоге, буфер заполняется типом ключа,
            который можно передать в качестве параметра ей же.
            Ответить
        • > Invalid address: [email protected]__You must provide at least one recipient email address.
          ВТФ? Ты о чем? Че это ты по ангельски со мной заговорил?
          Ответить
          • Еще один :)

            Это баг в движке говнокода. Пропускает такое мыло при регистрации, но потом не может отправить на него уведомление.
            Ответить
            • Нет, не пропускает. У меня подозрение, что кто-то научился изменять е-мейл в своём профиле.
              У Horse3 сначала был е-мейл [email protected], потом стал [email protected] И у кого-то ещё из коней е-мейл внезапно менялся.
              Ответить
        • Оберток конкретно эту функцию не нашел, кроме tinifile. Но там размер буфера - 16384. Откуда, почему, зачем - не понятно.
          Ответить
          • Ну я думаю, что 16384 тебе будет более чем достаточно ;)

            А чем TIniFile не устраивает?
            Ответить
            • Могут подсунуть ини-файл, размером пару десятков мегов, как это проделывали делали с прогой одного "товарища". В итоге прога падала в глубокий аут и вылетала.
              Ответить
              • Подсунуть могут что угодно, но, как правило, это что угодно совершенно не имеет смысла. И подсунувший - ССЗБ.
                Ответить
                • Но это еще не повод вылетать без вменяемого сообщения об ошибке в 2014 году.
                  Ответить
                  • Ты прав. Хотя бы сообщение "битый конфиг" стоит показать.

                    Хех... а если честно, вменяемость сообщений деградирует с каждым годом... В той же вин8 осталась только вертушка при загрузке, и хуй бы знал, чего она там делает. Ну и коронное "произошла какая-то ошибка" при апгрейде на 8.1...
                    Ответить
                    • [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System]
                      "VerboseStatus"=dword:00000001


                      В восьмёрке тоже работает.
                      Ответить
                    • Вот коронное http://gvforum.ru/viewtopic.php?pid=727#p727
                      Сука 2 дня убил на установку ёбаной винды. И до сих пор при попытке сделать suspend to disk ребутится.
                      Ответить
                    • Виноват, один маленький вопросик.
                      допустим, имеется класс
                      type
                      	tmyclass=class(tobject)
                      	private
                      	Fololo:string
                      	property ololo:string read fololo write setololo;
                      end;
                      ...
                      if tmyclass(list.objects[i]).ololo='some value' then
                      ...


                      не опасно ли обращаться к полям класса таким образом? Может, сначала нужно загнать значение в переменную и работать уже с ней?
                      Ответить
                      • > Может, сначала нужно загнать значение в переменную
                        Ты про tmyclass(list.objects[i])? Да разницы нету, все равно с одним и тем же объектом работаешь.
                        Ответить
                      • попробуй операторы is и as
                        Ответить
                      • Спасибо за помощь, но as и is прверяют, является ли объект потомком класса, а я имел в виду следующее: допустим, в одно время при обращении к свойству объекта произошло его [объекта] разрушение, в этом случае произойдет обращение к недействительному указателю. Как обработать такую ошибку?
                        Ответить
                        • не писать в два потока либо ставить мьютексы

                          а зачем ты емыло поменял?
                          Ответить
                          • Не менял, как было: [email protected]
                            если же речь о "Invalid address: [email protected]__You must provide at least one recipient email address. " то см. топики http://govnokod.ru/15275#comment220545, и ниже. Топик создан неадекватной личностью, которая обитает на сайте.
                            Ответить
    • Товарищи, подскажите, как поступит система(win32), если недостаточно памяти, а прога попыталась выделить большой блок:

      система откажет;
      система выделит блок меньшего размера, чем предполагалось.

      Дело в том, что я пытался найти функцию, чтобы по указателю определить размер блока, на который он ссылается(такая функция есть в PureBasic): не нашел. Вот и думаю: а нужна ли она [функция] вообще? Ведь если система откажет, то указатель будет пуст, если же выделит - размер будет равен заданому значению. Но как быть, если система выдаст блок недостаточного размера? Возможно ли это?
      Ответить
      • Само собой откажет. Пользоваться аллокатором, который может вернуть блок недостаточного размера, было бы сущим адом ;)
        Ответить
        • Спасибо, дорогой товарищ!

          p.s.
          взял на заметку, что PureBasic еще большее гов.., чем я предполагал. Он о-о-о-о-чень уебищно работает с памятью к тому же учит плохому. Хорошо, что я его бросил.
          Ответить

    Добавить комментарий