На главную Наши проекты:
Журнал   ·   Discuz!ML   ·   Wiki   ·   DRKB   ·   Помощь проекту
ПРАВИЛА FAQ Помощь Участники Календарь Избранное RSS
msm.ru
Модераторы: Qraizer, Hsilgos
Страницы: (78) « Первая ... 35 36 [37] 38 39 ...  77 78  ( Перейти к последнему сообщению )  
> Текущий Стандарт С++ и перспективы его развития
    gcc 4.6 обзавёлся range-based for loops...
    Скрытый текст
    качаем, компиляем, пробуем... :)
      уау!
      пару дней назад смотрел - небыло.
        ExpandedWrap disabled
          #include <iostream>
           
          int main()
          {
              int arr[] = {1, 2, 3, 4, 5};
              for (auto i: arr)
              {
                  std::cout << i << " ";
              }
              std::cout << std::endl;
          }

        выдаёт честные
        ExpandedWrap disabled
          P:\projects\tests\c++0x>a.exe
          1 2 3 4 5


        Добавлено
        Такой вариант:
        ExpandedWrap disabled
                #include <iostream>
                
                int main()
                {
                    for (auto i: {1, 2, 3, 4, 5})
                    {
                        std::cout << i << " ";
                    }
                    std::cout << std::endl;
                }

        Тоже работает. :)
          Цитата Flex Ferrum @
          Тоже работает.

          ничего странно, только нету смысла пока использовать C++0x в реальных приложениях, возникают проблемы с запуском на других компьютерах(в частности в линуксе)
            Цитата DEADHUNT @
            Цитата Flex Ferrum @
            Тоже работает.

            ничего странно, только нету смысла пока использовать C++0x в реальных приложениях, возникают проблемы с запуском на других компьютерах(в частности в линуксе)

            В каком смысле? Я в линуксе собираю. Этот пример пока не пробовал(сейчас нет возможности).
              Цитата DEADHUNT @
              возникают проблемы с запуском на других компьютерах(в частности в линуксе)

              ложь ;)
              я уже шесть месяцев работаю над проектом, на плюсах, с обильным использованием 0х. никаких сложностей нет. даже на мингве 4.5.1-4.6.0 все работает один в один.
                Цитата niXman @
                ложь
                я уже шесть месяцев работаю над проектом, на плюсах, с обильным использованием 0х. никаких сложностей нет. даже на мингве 4.5.1-4.6.0 все работает один в один.

                да у себя на компе работает, но как перенести на другой компьютер где нет gcc 4.5+? бинарник требует stdlibc++ которой нет в системе(есть более старая версия).
                  Цитата DEADHUNT @
                  но как перенести на другой компьютер где нет gcc 4.5+

                  установить.

                  Цитата DEADHUNT @
                  бинарник требует stdlibc++ которой нет в системе

                  к счастью, мне не приходилось переносить бинарники. всегда сорцы.
                  но даже с бинарниками не должно быть проблем. однажды маялся с такой проблемой. все просто решается, заданием значения переменной окружения LD_PRELOAD. если что, могу подробнее рассказать как это делается.
                    Цитата niXman @
                    установить.

                    если ты делаешь какую-то программу, то пользователям чтобы её использовать надо gcc вместе с libstdc++ последней версии собирать из исходников?
                    Цитата niXman @
                    к счастью, мне не приходилось переносить бинарники. всегда сорцы.

                    все ровно нужен собранный gcc соответствующей версии.

                    Добавлено
                    если собирать gcc 4.4 то проблем с запуском в современных дистрибутивах не должно быть, т.к. в них установлен gcc 4.4 по умолчанию.
                      DEADHUNT, мне кажется, что ты не совсем понимаешь, о чем говоришь. Но это тут не в тему :)
                        Цитата DEADHUNT @
                        если ты делаешь какую-то программу, то пользователям

                        я не пишу прикладной софт, или такой, какой устанавливают _юзеры_.
                        Сообщение отредактировано: niXman -
                          Не понял, зачем устанавливать целиком g++, если нужна только библиотека. Она же вроде отдельно устанавливаться может. А не может сама, так можно вручную ее установить.

                          Просто в тех версиях Linux, что я сталкивался, эта библиотека всегда шла отдельной строкой.
                            Цитата D_KEY @
                            DEADHUNT, мне кажется, что ты не совсем понимаешь, о чем говоришь. Но это тут не в тему

                            понимаю, просто мне уже приходилось ради переносимости переписывать с C++0x на C++.
                            Цитата amk @
                            Не понял, зачем устанавливать целиком g++, если нужна только библиотека. Она же вроде отдельно устанавливаться может. А не может сама, так можно вручную ее установить.

                            при сборке программы gcc версии x.x в бинарник автоматически добавляются зависимости от libstdc++ x.xyz(в винде это всё статически можно собрать, но в линуксе не получается), поэтому при сборке программы gcc 4.5, а потом при запуске например в чистой fedora 13 (где по умолчанию стоит gcc 4.4), загрузчик выдаст ошибку "установлена libstdc++ более низкой версии"
                            Сообщение отредактировано: DEADHUNT -
                              Цитата DEADHUNT @
                              Цитата D_KEY @
                              DEADHUNT, мне кажется, что ты не совсем понимаешь, о чем говоришь. Но это тут не в тему

                              понимаю, просто мне уже приходилось ради переносимости переписывать с C++0x на C++.
                              Цитата amk @
                              Не понял, зачем устанавливать целиком g++, если нужна только библиотека. Она же вроде отдельно устанавливаться может. А не может сама, так можно вручную ее установить.

                              при сборке программы gcc версии x.x в бинарник автоматически добавляются зависимости от libstdc++ x.xyz(в винде это всё статически можно собрать, но в линуксе не получается), поэтому при сборке программы gcc 4.5, а потом при запуске например в чистой fedora 13 (где по умолчанию стоит gcc 4.4), загрузчик выдаст ошибку "установлена libstdc++ более низкой версии"

                              А пакет свой сделать на gcc и стандартную библиотеку никак?
                                Цитата DEADHUNT @
                                в бинарник автоматически добавляются зависимости от libstdc++
                                Видишь, libstdc++ у тебя тоже существует отдельно, иначе зависимость не нужна была бы, но это и означает, что библиотека может быть установлена отдельно
                                0 пользователей читают эту тему (0 гостей и 0 скрытых пользователей)
                                0 пользователей:
                                Страницы: (78) « Первая ... 35 36 [37] 38 39 ...  77 78


                                Рейтинг@Mail.ru
                                [ Script execution time: 0,0795 ]   [ 16 queries used ]   [ Generated: 21.06.25, 10:05 GMT ]