|
А почему так инициализация |
|
|
|
 |
Ответов
|
Jul 25 2018, 15:30
|
Гуру
     
Группа: Свой
Сообщений: 3 644
Регистрация: 28-05-05
Пользователь №: 5 493

|
Еще интересный вопрос возник. Как вам такая штука Код int searchDB (int v) { //.............. } .... main... searchDB('1234'); Тут gcc дает warning что то там multibyte, точно не помню. Просто интересное применение, раньше как-то не встречал такую идею. Цитата(Forger @ Jul 25 2018, 18:26)  Вполне возможно, что у него соотв. ворнинги запрещены через соотв. ключи компиляции самой средой. По умолчанию? Он ругается на куда более безопасные вещи. Ну ладно, с этим вопросом разобрались вроде
|
|
|
|
|
Jul 25 2018, 15:30
|

Профессионал
    
Группа: Свой
Сообщений: 1 215
Регистрация: 22-02-05
Пользователь №: 2 831

|
Цитата(DASM @ Jul 25 2018, 18:27)  Еще интересный вопрос возник. Как вам такая штука Код int searchDB (int v) .... searchDB('1234'); Тут gcc дает warning что то там multibyte, точно не помню. Просто интересное применение, раньше как-то не встречал такую идею. На известном ресурсе полно подобного "кода". Смысл его тут цитировать? Код Он ругается на куда более безопасные вещи M$ - уже давно не образец для подражания.
--------------------
Кругозор некоторых людей - круг с нулевым радиусом. Они называют его "точкой зрения".
|
|
|
|
|
Jul 25 2018, 15:39
|

Профессионал
    
Группа: Свой
Сообщений: 1 215
Регистрация: 22-02-05
Пользователь №: 2 831

|
Цитата(DASM @ Jul 25 2018, 18:31)  Стоп стоп. Почему Вы считаете это говнокодом и как бы Вы сделали, не городя монстра? Разве не очевидно? Функция ожидает int, а получает то, что дадут. В подобных ситуациях делают ряд функций, каждая из которых работает со своим типом данных. Либо передается в одну функцию ссылка на определенную структура, где заранее расписаны "детали" поиска и что искать. Существуют и другие способы, но там уже используются чисто плюсы и их "фишки". Цитата По сути из имени получается бесплатно подобие хэша. Неявно, неочевидно. Со временем развития проекта из-за этого могут возникнуть проблемы, которые найти будет довольно сложно. Компилятор заругается, если будет не 4 цифры, а больше или int на неком железе окажется равным не 4 байтам. Но ведь это лишь предупреждение... Не дай бог это попадет в библиотеку, где линкер при сборке этого просто не увидит! А если дать всего 3 цифры, то что получит на входе функция? Лотерею из мусора в стеке?...
--------------------
Кругозор некоторых людей - круг с нулевым радиусом. Они называют его "точкой зрения".
|
|
|
|
|
Jul 25 2018, 16:01
|
Гуру
     
Группа: Свой
Сообщений: 3 644
Регистрация: 28-05-05
Пользователь №: 5 493

|
Цитата(Forger @ Jul 25 2018, 18:39)  Разве не очевидно? Функция ожидает int, а получает то, что дадут. В подобных ситуациях делают ряд функций, каждая из которых работает со своим типом данных. Либо передается в одну функцию ссылка на определенную структура, где заранее расписаны "детали" поиска и что искать. Существуют и другие способы, но там уже используются чисто плюсы и их "фишки".
Неявно, неочевидно. Со временем развития проекта из-за этого могут возникнуть проблемы, которые найти будет довольно сложно. Компилятор заругается, если будет не 4 цифры, а больше или int на неком железе окажется равным не 4 байтам. Но ведь это лишь предупреждение... Не дай бог это попадет в библиотеку, где линкер при сборке этого просто не увидит! А если дать всего 3 цифры, то что получит на входе функция? Лотерею из мусора в стеке?... Думаю Вы правы. Просто дали проект, сижу разбираюсь. Многие вещи интересные. Причем 90% кода по всем правилам, что наводит на мысли об опыте автора. А раз применяет такие трюки - может в этом есть смысл? Я то сам пишу удивительно пресный код, таких открытий он не сулит. Но у меня обычно больший overhead, не люблю оптимизировать
|
|
|
|
|
Jul 25 2018, 16:10
|

Профессионал
    
Группа: Свой
Сообщений: 1 215
Регистрация: 22-02-05
Пользователь №: 2 831

|
Цитата(DASM @ Jul 25 2018, 19:01)  Просто дали проект, сижу разбираюсь. Сочувствую  Доделывать начатое за другими - мало кому по кайфу ... Цитата Но у меня обычно больший overhead, не люблю оптимизировать В таких ситуациях когда флэш очень толстая и камень имеет огромный запас производительности я задаю себе один простой вопрос: "а стоит ли овчинка выделки?"
--------------------
Кругозор некоторых людей - круг с нулевым радиусом. Они называют его "точкой зрения".
|
|
|
|
|
Jul 25 2018, 16:24
|
Гуру
     
Группа: Свой
Сообщений: 3 644
Регистрация: 28-05-05
Пользователь №: 5 493

|
Цитата(Forger @ Jul 25 2018, 19:10)  Сочувствую  Доделывать начатое за другими - мало кому по кайфу ... В таких ситуациях когда флэш очень толстая и камень имеет огромный запас производительности я задаю себе один простой вопрос: "а стоит ли овчинка выделки?"  Не, сочувствовать не надо. Я во всех чужих программах ищу и нахожу что то новое. Может через месяц я начну переделывать ее, но уже имея в багаже чужие трюки и подходы. Есть плохие места, есть интересные. Знания лишние не бывают. Операционку он ucos юзал, не в восторге, но работает. Я хотел бы scmRTOS, но это потом. Кстати крутая программистка, которая тоже сидела над этим проектом за нее. Но увы, у девушек редко хорошо с железом,, поэтому с ней расстались. Хотя в плане академического программирования - все красиво и хорошо.
|
|
|
|
Сообщений в этой теме
DASM А почему так инициализация Jul 24 2018, 18:43 aaarrr Потому что "the" по стандарту константа. Jul 24 2018, 18:46 ViKo Цитата(aaarrr @ Jul 24 2018, 21:46) Потом... Jul 24 2018, 18:52  aaarrr Цитата(ViKo @ Jul 24 2018, 21:52) А указа... Jul 24 2018, 18:54   DASM Цитата(aaarrr @ Jul 24 2018, 21:54) Указа... Jul 24 2018, 19:00    jcxz Цитата(DASM @ Jul 24 2018, 22:00) А почем... Jul 25 2018, 05:16     DASM Цитата(jcxz @ Jul 25 2018, 08:16) Согласе... Jul 25 2018, 15:22      Forger Цитата(DASM @ Jul 25 2018, 18:22) M... Jul 25 2018, 15:26    XVR Цитата(DASM @ Jul 24 2018, 22:00) А почем... Jul 25 2018, 07:58     jcxz Цитата(XVR @ Jul 25 2018, 10:58) Потому ч... Jul 25 2018, 10:20      XVR Цитата(jcxz @ Jul 25 2018, 13:20) Да ладн... Jul 26 2018, 12:42       Forger Цитата(XVR @ Jul 26 2018, 15:42) Единстве... Jul 26 2018, 12:56        XVR Цитата(Forger @ Jul 26 2018, 15:56) В дан... Jul 26 2018, 13:01         Forger Цитата(XVR @ Jul 26 2018, 16:01) А в чём ... Jul 26 2018, 13:03          XVR Цитата(Forger @ Jul 26 2018, 16:03) Что б... Jul 26 2018, 13:39           Forger Цитата(XVR @ Jul 26 2018, 16:39) Т.е. вы ... Jul 26 2018, 13:47    esaulenka Цитата(DASM @ Jul 24 2018, 22:00) А почем... Jul 25 2018, 09:56     Forger Цитата(esaulenka @ Jul 25 2018, 12:56) В ... Jul 25 2018, 10:02 DASM Цитата(aaarrr @ Jul 24 2018, 21:46) Потом... Jul 24 2018, 18:56 ViKo ЦитатаУказатель модифицировать можно, а вот содерж... Jul 24 2018, 18:59 Forger Цитата(DASM @ Jul 24 2018, 21:43) CODEstr... Jul 25 2018, 07:04       Forger Цитата(DASM @ Jul 25 2018, 19:24) Не, соч... Jul 25 2018, 16:33        DASM Цитата(Forger @ Jul 25 2018, 19:33) Ну, е... Jul 25 2018, 16:49         Forger Цитата(DASM @ Jul 25 2018, 19:49) проблем... Jul 25 2018, 17:05       jcxz Цитата(DASM @ Jul 25 2018, 19:24) Операци... Jul 25 2018, 20:30        Forger Цитата(jcxz @ Jul 25 2018, 23:30) Сурово ... Jul 25 2018, 20:35   jcxz Цитата(DASM @ Jul 25 2018, 18:31) Иначе в... Jul 25 2018, 16:19    Arlleex Цитата(jcxz @ Jul 25 2018, 19:19) Нормаль... Jul 25 2018, 16:31 DASM Ни разу не видел еще готовый проект с кучей доступ... Jul 25 2018, 17:41 Forger Цитата(DASM @ Jul 25 2018, 20:41) Ни разу... Jul 25 2018, 17:45  DASM Цитата(Forger @ Jul 25 2018, 20:45) Я тож... Jul 25 2018, 17:48   Forger Цитата(DASM @ Jul 25 2018, 20:48) А как п... Jul 25 2018, 17:52    DASM Цитата(Forger @ Jul 25 2018, 20:52) Под я... Jul 25 2018, 18:15     Forger Цитата(DASM @ Jul 25 2018, 21:15) Я вообщ... Jul 25 2018, 18:34      DASM Цитата(Forger @ Jul 25 2018, 21:34) В это... Jul 25 2018, 18:42 DASM БолгенОС уже была.. Jul 26 2018, 02:32 Arlleex Цитата(jcxz @ Jul 26 2018, 00:30) Это ана... Jul 26 2018, 04:49 DASM "С какой стороны будет "обрезана" с... Jul 26 2018, 14:20 Forger Цитата(DASM @ Jul 26 2018, 17:20) "С... Jul 26 2018, 14:22 DASM С литеральными все понятно и вопроса не было бы. Я... Jul 26 2018, 15:25 Forger Цитата(DASM @ Jul 26 2018, 18:25) Вот ... Jul 26 2018, 15:35  XVR Цитата(Forger @ Jul 26 2018, 18:35) У мен... Jul 26 2018, 19:40 DASM Ну Майкрософт ошибку дает, видимо кто на что гораз... Jul 26 2018, 16:04 Forger Цитата(DASM @ Jul 26 2018, 19:04) то ++ с... Jul 26 2018, 16:18  DASM Цитата(Forger @ Jul 26 2018, 19:18) Раз п... Jul 26 2018, 16:43   Forger Цитата(DASM @ Jul 26 2018, 19:43) да нечи... Jul 26 2018, 17:12  DASM Цитата(Forger @ Jul 26 2018, 19:18) Раз п... Jul 27 2018, 04:57   Forger По логике i тут должен быть int, для этого тут пос... Jul 27 2018, 05:25    DASM Цитата(Forger @ Jul 27 2018, 08:25) По ло... Jul 27 2018, 05:42     Arlleex Цитата(DASM @ Jul 27 2018, 09:42) то буде... Jul 27 2018, 06:26      Herz Господа, пора бы остановиться, а? Очень не хочется... Jul 27 2018, 07:37     Forger Цитата(DASM @ Jul 27 2018, 08:42) Это не ... Jul 27 2018, 06:44 DASM i это не итератор, это локальная переменная типа э... Jul 27 2018, 07:29 Forger Цитата(DASM @ Jul 27 2018, 10:29) i это н... Jul 27 2018, 07:44 DASM Это int. Дома посмотрю, почему у Вас сомнения Jul 27 2018, 07:53 DASM Проверил, это точно int , собственно и сомнений не... Jul 29 2018, 12:15 Forger Цитата(DASM @ Jul 29 2018, 15:15) Провери... Jul 29 2018, 13:11  DASM Цитата(Forger @ Jul 29 2018, 16:11) Попро... Jul 29 2018, 15:32   Forger Заглумил я тут всех
Короче, увеличил кучу, все с... Jul 29 2018, 16:18 DASM "несколько непривычно для восприятия цикла fo... Jul 29 2018, 16:44 Forger Цитата(DASM @ Jul 29 2018, 19:44) мне неп... Jul 29 2018, 16:59 DASM ничего не понял. Предлагаете делать вектор на стек... Jul 29 2018, 17:08 Forger Цитата(DASM @ Jul 29 2018, 20:08) ничего ... Jul 29 2018, 17:15 esaulenka Я дико извиняюсь, но почему обсуждение стандартной... Aug 3 2018, 16:20 Forger Цитата(esaulenka @ Aug 3 2018, 19:20) Я д... Aug 3 2018, 16:47  XVR Цитата(Forger @ Aug 3 2018, 19:47) Другая... Aug 4 2018, 16:38   Forger Цитата(XVR @ Aug 4 2018, 19:38) Не надо. ... Aug 4 2018, 16:44 Kabdim Не стоит забывать что stl который с компилятором н... Aug 5 2018, 10:05 Forger Цитата(Kabdim @ Aug 5 2018, 13:05) EASTL
... Aug 5 2018, 15:20  Herz Цитата(Forger @ Aug 5 2018, 18:20) примен... Aug 5 2018, 18:53   Forger Цитата(Herz @ Aug 5 2018, 21:53) А просто... Aug 5 2018, 19:07 Herz По сути сказанного я с Вами полностью согласен.
Но... Aug 5 2018, 19:30 Forger Цитата(Herz @ Aug 5 2018, 22:30) то я пря... Aug 5 2018, 19:39 Herz Вот именно. Aug 5 2018, 19:48 Forger Цитата(Herz)чем буржуазный "экспириенс" ... Aug 5 2018, 20:06
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|