На главную Наши проекты:
Журнал   ·   Discuz!ML   ·   Wiki   ·   DRKB   ·   Помощь проекту
ПРАВИЛА FAQ Помощь Участники Календарь Избранное RSS
msm.ru
Модераторы: Qraizer, Hsilgos
Страницы: (78) « Первая ... 20 21 [22] 23 24 ...  77 78  ( Перейти к последнему сообщению )  
> Текущий Стандарт С++ и перспективы его развития
    Доступен GCC 4.4.1

    Похоже лямбд и в GCC 4.5 небудет :(
      Цитата Большой @
      Похоже лямбд и в GCC 4.5 небудет :(

      Скачай себе бранч, и пользуйся. :) Только его сначала сбилдить надо. По поводу мерджа в лямбд в транк - я так понял, что человек, который решил реализовать лямбды в gcc, забил на это в конце прошлого года (судя по истории изменений). Подхватит ли кто его флаг? Вот вопрос. :)
        Цитата Flex Ferrum @
        Скачай себе бранч, и пользуйся. :) Только его сначала сбилдить надо. По поводу мерджа в лямбд в транк - я так понял, что человек, который решил реализовать лямбды в gcc, забил на это в конце прошлого года (судя по истории изменений). Подхватит ли кто его флаг? Вот вопрос. :)

        всеволишь объект создать с оператором (), как я понял вроде ничего сложного.
          Цитата DEADHUNT @
          всеволишь объект создать с оператором (), как я понял вроде ничего сложного.

          Я так понял, что есть там свои тонкости. Глубоко не вникал, но с capture-списком нужно повозиться.
            Цитата DEADHUNT @
            всеволишь объект создать с оператором (), как я понял вроде ничего сложного.

            непонял ты к чему.

            Добавлено
            Flex Ferrum Скачай себе бранч, и пользуйся
            что это и где взять?
            Сообщение отредактировано: Большой -
              Цитата Большой @
              Flex Ferrum Скачай себе бранч, и пользуйся
              что это и где взять?

              если не знаешь что это такое, то тебе лучше не брать :P
              но на всякий случай http://gcc.gnu.org/svn/gcc/branches/cxx0x-lambdas-branch/
              Сообщение отредактировано: DEADHUNT -
                Цитата DEADHUNT @
                если не знаешь что это такое, то тебе лучше не брать

                Очень хорошая шутка

                Добавлено
                Flex Ferrum
                я так и не понял,они чё совсем лямбды делать не будут?
                  Цитата Большой @
                  я так и не понял,они чё совсем лямбды делать не будут?

                  http://gcc.gnu.org/gcc-4.5/cxx0x_status.html
                  пока наверное нет, а зачем так понадобились lambda-expressions?
                    DEADHUNT
                    Надоело функторы писать состоящие из 2-3 строк кода.
                      Цитата Большой @
                      я так и не понял,они чё совсем лямбды делать не будут?

                      А я почем знаю? Я за их мейл-листом не слежу. :)


                      Цитата Большой @
                      что это и где взять?

                      Качаешь исходники из их репозитория (ветку с лямбдами), выкчиваешь еще пару библиотек (для работы с длинными целыми и еще какую-то), компилируешь с помощью текущей версии gcc (компиляет достаточно быстро), делаешь make install, и пользуешься. А, да. К MinGW нужно msys выкачать (без него не сделаешь autoconf/automake).
                        Цитата Flex Ferrum @
                        Качаешь исходники из их репозитория (ветку с лямбдами), выкчиваешь еще пару библиотек (для работы с длинными целыми и еще какую-то), компилируешь с помощью текущей версии gcc (компиляет достаточно быстро), делаешь make install, и пользуешься. А, да. К MinGW нужно msys выкачать (без него не сделаешь autoconf/automake).

                        Не, на самом деле - это я погорячился. gcc 4.5 (основной транк) собрать под винду - это тот еще квест. :) Но, вполне проходимый... :D
                          Flex Ferrum
                          да, засада.
                          Подожду еще. (Пока еще не сильно приперло)
                            Цитата Большой @
                            да, засада.

                            Ну, на самом деле там не все так страшно. Просто долго времени ушло на выяснение правильной последовательности запуска make'ов. Засада в другом. Бранч (который с лямбдами) содержит как минимум одну достадную ошибку в плане обработки блока __try/__catch. Выяснил это позавчера, когда игрался с std::unordered_map. Основной транк этой ошибки не содержит, но с лямбдами его мерджить надо.
                              Цитата Flex Ferrum @
                              ошибку в плане обработки блока __try/__catch

                              зачем в gcc __try/__catch? :wacko:
                                Цитата DEADHUNT @
                                зачем в gcc __try/__catch? :wacko:

                                А я почем знаю? :wacko:

                                Добавлено
                                Код, который вызывал ошибку:
                                ExpandedWrap disabled
                                    // Definitions of class template _Hashtable's out-of-line member functions.
                                    template<typename _Key, typename _Value,
                                         typename _Allocator, typename _ExtractKey, typename _Equal,
                                         typename _H1, typename _H2, typename _Hash, typename _RehashPolicy,
                                         bool __chc, bool __cit, bool __uk>
                                      typename _Hashtable<_Key, _Value, _Allocator, _ExtractKey, _Equal,
                                              _H1, _H2, _Hash, _RehashPolicy,
                                              __chc, __cit, __uk>::_Node*
                                      _Hashtable<_Key, _Value, _Allocator, _ExtractKey, _Equal,
                                             _H1, _H2, _Hash, _RehashPolicy, __chc, __cit, __uk>::
                                      _M_allocate_node(const value_type& __v)
                                      {
                                        _Node* __n = _M_node_allocator.allocate(1);
                                       __try
                                      {
                                  #ifdef _GLIBCXX_INCLUDE_AS_CXX0X
                                        _M_node_allocator.construct(__n, __v);
                                  #else
                                        _M_get_Value_allocator().construct(&__n->_M_v, __v);
                                  #endif
                                        __n->_M_next = 0;
                                      }
                                        __catch(...)
                                      {
                                        _M_node_allocator.deallocate(__n, 1);
                                        __throw_exception_again;
                                      }
                                        return __n;
                                      }
                                0 пользователей читают эту тему (0 гостей и 0 скрытых пользователей)
                                0 пользователей:
                                Страницы: (78) « Первая ... 20 21 [22] 23 24 ...  77 78


                                Рейтинг@Mail.ru
                                [ Script execution time: 0,0640 ]   [ 16 queries used ]   [ Generated: 19.06.25, 20:36 GMT ]