На главную Наши проекты:
Журнал   ·   Discuz!ML   ·   Wiki   ·   DRKB   ·   Помощь проекту
ПРАВИЛА FAQ Помощь Участники Календарь Избранное RSS
msm.ru
! Правила раздела:
1. Название темы - краткое описание кто/что против кого/чего
2. В первом сообщении - список параметров, по которым идет сравнение.
3. Старайтесь аргументировать свои высказывания. Фразы типа "Венда/Слюникс - ацтой" считаются флудом.
4. Давайте жить дружно и не доводить обсуждение до маразма и личных оскорблений.
Модераторы: Модераторы, Комодераторы
Закрыто archimed7592 11-03-2008: Лимит страниц. Продолжаем Delphi vs C++

Страницы: (117) « Первая ... 40 41 [42] 43 44 ...  116 117  ( Перейти к последнему сообщению )  
> Delphi vs C++ , Часть 1
    Цитата BugHunter @
    bool b = 0; //за такую инициализацию - кастрация тупыми ножницами без наркоза

    И почему же?
      Цитата Flex Ferrum @
      И почему же?


      Ну видимо всё потому же.. Коли в языке отсутствует строгая типизация, то приходится навязывать её административными методами..
        Цитата jack128 @
        Ну видимо всё потому же.. Коли в языке отсутствует строгая типизация, то приходится навязывать её административными методами..

        А чем оно сопсно плохо? Внимательным(!) программерам с такой фичей очень даже сладко живется. :)
          Stratocoder, внимательные программеры не заостряют внимание на слове "внимательный" путём добавления после слова восклицательного знака "(!)" т. к. внимательные программеры и так заметят, что речь идёт именно о внимательных программерах... а вот "невнимательные" программеры как раз и добавляют "(!)", "0." и т. п. :lol: :tong:
            Эт че, типо придраться не к чему?
              Stratocoder, нет, просто я обратил твоё внимание, что несмотря на своё высказывание о "внимательных" программерах, ты уточняешь то, что говоришь... а программировать - это всё равно, что говорить, только на языке компьютера ;)
                Цитата Stratocoder @
                Внимательным(!) программерам с такой фичей очень даже сладко живется.

                угу. Проблема в том, что я еще не видел человека который был бы внимательным всегда.
                Более того, помоему - среднестатистический программист гораздо менее внимателен по сравнению со среднестатистическим человеком.
                  Цитата
                  А чем оно сопсно плохо? Внимательным(!) программерам с такой фичей очень даже сладко живется. :)

                  Как бы тебе сказать.. в результате какого нибудь неявного каста может произойти э... то, что программер не предвидел. Не ожидал. Не рассчитывал.

                  Цитата
                  Коли в языке отсутствует строгая типизация, то приходится навязывать её административными методами..

                  Именно. И начинает навязываться с мелочей.
                  Сегодня он bool a = 0 напишет, завтра указателю const приписать забудет, послезавтра c-style cast применит, а через неделю забудет инициализировать член класса в конструкторе. И что потом делать с этим "изделием"?
                  Раз***во начинается с малого, а заканчивается большим. Или толстым. Или полным. Кому как больше нравится :)

                  Цитата
                  Проблема в том, что я еще не видел человека который был бы внимательным всегда.

                  Моя тоже :)
                  Сообщение отредактировано: BugHunter -
                    Цитата BugHunter @
                    Сегодня он bool a = 0 напишет

                    Ну, зачем же так сурово? Записи
                    bool a = 0
                    и
                    bool a = false
                    абсолютно равноценны и эквивалентны. И никакого неявного каста тут не производится, т. к. 0 в С++ несколько волшебная константа.
                    Как, например, в таком случае:

                    ExpandedWrap disabled
                      template<typename T> void foo()
                      {
                         T zero_init_val = ...; // ???
                      }

                    корректно проинициализировать zero_init_val значением, эквивалентным нулевому для типа T?
                    Вот в том то и дело.
                      Не, Флекс, я не спорю, ТЕОРЕТИЧЕСКИ здесь никаких проблем не возникает :no:
                      А практически это даже для поиска по тексту удобнее. Ты сам как считаешь?
                      Сообщение отредактировано: BugHunter -
                        Цитата BugHunter @
                        А практически это даже для поиска по тексту удобнее. Ты сам как считаешь?

                        Я считаю, что все зависит от того, на что рука набита. Если, например, много программируешь на шаблонах, то уже скорее на автомате проинициализируешь нулем. И страшного в этом ничего не будет. Так что вешать за яйки за такую запись я не стал, т. к. вероятнее всего разработчик достаточно хорошо понимает - что делает.
                        А вот за
                        bool a = 1
                        - сколько угодно.
                          хорошо что я не с вами работаю :lol: :)

                          ....стремные вы ребята...
                          Сообщение отредактировано: AngelPS -
                            Цитата
                            ....стремные вы ребята...

                            угу, гавнюки ещё те :yes:
                              Цитата Flex Ferrum @
                              bool a = 0
                              и
                              bool a = false
                              абсолютно равноценны и эквивалентны. И никакого неявного каста тут не производится

                              Ну, тут ты не прав. Каст есть.

                              Цитата
                              т. к. 0 в С++ несколько волшебная константа.

                              Волшебная она для указателей, например, но не для bool.

                              Цитата
                              ExpandedWrap disabled
                                template<typename T> void foo()
                                {
                                   T zero_init_val = ...; // ???
                                }

                              корректно проинициализировать zero_init_val значением, эквивалентным нулевому для типа T?

                              Вопрос приведения типа, лучше всего так:
                              ExpandedWrap disabled
                                template<typename T> void foo()
                                {
                                   T zero_init_val = T(0);
                                }


                              Цитата
                              Если, например, много программируешь на шаблонах, то уже скорее на автомате проинициализируешь нулем.

                              Автомат на шаблоне я показал. От такого автомата должна привиться тогда запись: bool(0).

                              Цитата
                              т. к. вероятнее всего разработчик достаточно хорошо понимает - что делает.

                              Хмм. Откуда такой вывод? :blink:

                              P.S. А если он напишет
                              ExpandedWrap disabled
                                bool b = 0.;
                              то ты какой вывод сделаешь? ;)
                                Цитата Hryak @
                                P.S. А если он напишет

                                bool b = 0.;

                                то ты какой вывод сделаешь? ;)

                                Ну, 0. это совсем не то же самое, что и 0. ;)

                                И потом:
                                Цитата
                                The form of initialization (using parentheses or =) is generally insignificant,

                                (пункт 11 раздела стандарта 8.5 - Initializer)
                                Т. е. (в случае простых типов) как записана инициализация:
                                bool a = 0;
                                или
                                bool a(0);
                                или
                                bool a = bool(0)
                                не существенно.

                                Если я не прав - ткни, плз, в соответствующий пункт стандарта. :)
                                0 пользователей читают эту тему (0 гостей и 0 скрытых пользователей)
                                0 пользователей:
                                Страницы: (117) « Первая ... 40 41 [42] 43 44 ...  116 117
                                Закрыто archimed7592 11-03-2008: Лимит страниц. Продолжаем Delphi vs C++



                                Рейтинг@Mail.ru
                                [ Script execution time: 0,1334 ]   [ 15 queries used ]   [ Generated: 14.08.25, 09:17 GMT ]