На главную Наши проекты:
Журнал   ·   Discuz!ML   ·   Wiki   ·   DRKB   ·   Помощь проекту
ПРАВИЛА FAQ Помощь Участники Календарь Избранное RSS
msm.ru
! Правила раздела:
1. Название темы - краткое описание кто/что против кого/чего
2. В первом сообщении - список параметров, по которым идет сравнение.
3. Старайтесь аргументировать свои высказывания. Фразы типа "Венда/Слюникс - ацтой" считаются флудом.
4. Давайте жить дружно и не доводить обсуждение до маразма и личных оскорблений.
Модераторы: Модераторы, Комодераторы
Страницы: (6) 1 [2] 3 4 ... Последняя » все  ( Перейти к последнему сообщению )  
> Каким должен быть С++? , Ваше мнение
    Цитата amk @
    Тогда пункт 4 будет противоречить существующему синтаксису. А вот групповое присваивание не помешало бы. И может присваивание части массива. Привык уже в питоне без временных переменных обходиться:
    ExpandedWrap disabled
      a, b = b, a # Обмен значениями
      a, b = b + a, a # при вычислении чисел Фибоначчи
      a, b = b, a%b # алгоритм Эвклида
      x, y = x*c - y*s, y*c + x*s # поворот вектора

    Тут тоже будет противоречие. Т.к. сейчас в
    ExpandedWrap disabled
      int x, y = foo();

    результат foo не имеет никакого отношения к x, а инициализирует только y.
      Цитата OpenGL @
      Цитата Славян @
      1.Вместо писанины y = sqrt(x) мы бы видели рисования корня над 'x' и далее, если надо.

      Цитата Славян @
      3.Всякие goto рисовались бы полукруглыми путём со стрелками, если недалеко ведут.

      Цитата Славян @
      6.Чтобы неравенство можно было рисовать значком уникода ≠, а не городить непонятное многим "!=".

      И как ты себе представляешь редактирование такого файла?
      Очень плохо представляю, даже отвратительно. Согласен, что тут "красота для глаз" сталкивается в войне с "удобством для рук". :oops:
        Цитата D_KEY @
        Тут тоже будет противоречие.
        Синтаксис питона для C++ не подойдёт. В питоне запятая является просто перечислением, и сама по себе формирует кортеж. А в С++ запятая является операцией, вычисляющей и отбрасывающей результат левого от неё выражения. То есть без некоторого обрамления не обойтись. Подошла бы запись вроде
        ExpandedWrap disabled
          {a, b} = {b, foo(a)};

        И в объявлениях множественное присваивание смысла обычно не имеет.
          Цитата Славян @
          Вместо писанины y = sqrt(x) мы бы видели рисования корня над 'x' и далее, если надо.
          ...
          Чтобы неравенство можно было рисовать значком уникода ≠, а не городить непонятное многим "!=".
          Ты сначала вспомни зачем были введены диграфы и триграфы.
            Цитата amk @
            Тогда пункт 4 будет противоречить существующему синтаксису.
            Да. Выражение может быть или обычным, или определением, но целиком либо тем, или иным. Делать или нет определениями отдельные его операнды синтаксис выражений не позволяет. Но ты можешь произвольное выражение_не_определение замешать в инициализирующее значение выражения-определения:
            ExpandedWrap disabled
              for (int i = (j = 10, 0); i < j; ++i)
              Та надо вообще отказаться от for в текущем виде и добавить интервалы =)

              ExpandedWrap disabled
                // вместо
                for (int i = (j = 10, 0); i < j; ++i)
                // это
                for (int i = 10 in [0..j = i])
                 
                // вместо
                for (int i = 0; i < j; i+=5)
                // это
                for (int i in [0..j] by 5)
              :crazy:
                Та оставить for как есть, бог с ним. Лучше выпилить switch, тот вообще неструктурный даже.
                ExpandedWrap disabled
                  switch(...)
                  {
                    case ...: if(...){/* ... */
                    case ...:         /* ... */
                    case ...:;} else {/* ... */
                    case ...:         /* ... */ break;
                    case ...:         /* ... */}
                  }
                  Цитата prografix @
                  1. Недавно прочитал мнение о том, что this должен быть ссылкой, а не указателем.

                  В Java с C# прочитал? :D

                  Цитата prografix @
                  2. Давно читал о том, что оператор "->" можно ( нужно ) заменить на ".".

                  Зочем? -> это для указателей, . - Для обычной семантики по значению. Если Заменить -> на . то как работать с указателями? Или выбросить их?

                  Цитата prografix @
                  3. От себя добавлю, что конструкции struct и class во многом совпадают, поэтому можно либо что-то из них убрать, либо сделать их более разными ( например, запретить в struct функции-члены ). Я думаю, что лучше оставить один class. А ещё лучше заменить его на type.

                  Структура более лаконична, если нужно написать интерфейс. Не нужно пихать всякие public, и смотрится красиво. Не нужно. и type в топку.
                    Serafim, держи. Смотреть надо на функцию main. :) То, что выше - это "пережитки" C++11. В C++14 код будет сильно проще.
                      Цитата Flex Ferrum @
                      Serafim, держи. Смотреть надо на функцию main. То, что выше - это "пережитки" C++11. В C++14 код будет сильно проще.

                      Но это ведь маразм ради какой то сахарной фичи городить такой огород ))
                      Сообщение отредактировано: Wound -
                        Цитата Wound @
                        Но это ведь маразм ради какой то сахарной фичи городить такой огород ))

                        Так вот я и говорю - в C++14 будет много проще. :)
                          Цитата Flex Ferrum @
                          Так вот я и говорю - в C++14 будет много проще.

                          А сейчас как выходит стандарты? Каждый год? Или у них просто есть конечная цель и они ее реализуют? А то раньше както редко выходили новые стандларты. А щас чуть ли не каждый год-два
                            Цитата Wound @
                            А сейчас как выходит стандарты?

                            Сейчас вот "баг-фикс" в виде C++14, а потом будет С++17 c блэкджеком полиморфными аллокаторами и лайт-концептами.
                              Цитата Flex Ferrum @
                              Сейчас вот "баг-фикс" в виде C++14, а потом будет С++17 c блэкджеком полиморфными аллокаторами и лайт-концептами.

                              А есть компилятор уже с полностью реализованым стандартом что они приняли в 11 году? Пусть даже с какими то багами? А то я както давно уже пропустил тему.

                              Добавлено
                              gcc последний например ? Или это они его все пилить до 17 года будут?
                              Сообщение отредактировано: Wound -
                                Цитата Wound @
                                gcc последний например ?

                                Full-featured C++11 - это gcc 4.8 и, ЕМНИП, clang 3.3. clang 3.4 поддерживает уже почти все фишки C++14.
                                1 пользователей читают эту тему (1 гостей и 0 скрытых пользователей)
                                0 пользователей:


                                Рейтинг@Mail.ru
                                [ Script execution time: 0.0961 ]   [ 14 queries used ]   [ Generated: 27.07.26, 06:56 GMT ]