На главную Наши проекты:
Журнал   ·   Discuz!ML   ·   Wiki   ·   DRKB   ·   Помощь проекту
ПРАВИЛА FAQ Помощь Участники Календарь Избранное RSS
msm.ru
! Правила раздела:
1. Название темы - краткое описание кто/что против кого/чего
2. В первом сообщении - список параметров, по которым идет сравнение.
3. Старайтесь аргументировать свои высказывания. Фразы типа "Венда/Слюникс - ацтой" считаются флудом.
4. Давайте жить дружно и не доводить обсуждение до маразма и личных оскорблений.
Модераторы: Модераторы, Комодераторы
Страницы: (495) « Первая ... 491 492 [493] 494 495   ( Перейти к последнему сообщению )  
> Delphi vs C++ vs C# , ну и Java немножко, где-то ближе к старшему байту номеров страниц
    Значит это хреновый программист. Я наверняка уже через полгода программирования на дельфе (когда писал всякую хрень для себя в школе) знал, как оно делается :D
      Цитата treeS @
      Но средствами делфи происходит перемещения в корзину, целый день он с этим мучался, и на следующий день, он узнал о Win API функции DeleteFile

      Фигасе "средства Delphi". В корзину - это функцию оболочки пользовать надо. А DeleteFile является исторически оберткой в SysUtils, подается строка туда.
      Сдается мне, что-то тут перепутано с точностью до наоборот. Мне вот вроде вспоминается что я искал как удалить файл в корзину когда-то.
        Цитата Romkin @
        Сдается мне, что-то тут перепутано с точностью до наоборот.

        Кстати да, скорей всего. Как удалить в корзину надо будет гуглить :)
          Цитата D_KEY @
          Эм, а что же это?

          Т.е. ты без async можешь сделать всё то же самое?
            Цитата OpenGL @
            Цитата Romkin @
            Сдается мне, что-то тут перепутано с точностью до наоборот.

            Кстати да, скорей всего. Как удалить в корзину надо будет гуглить :)

            Средствами shell в делфи есть спецальный компонент.

            Добавлено
            И поверте. Ничего не перепутанно
              Цитата treeS @
              Средствами shell в делфи есть спецальный компонент.

              Загрузился. Облазил палитру. Поискал в исходниках. Для разнообразия в 2010. Где оно есть?
                Цитата MyNameIsIgor @
                Цитата D_KEY @
                Эм, а что же это?

                Т.е. ты без async можешь сделать всё то же самое?

                Думаю, что да. По крайней мере каждое конкретное применение await можно сделать руками. Но подробно не смотрел на это дело. Я ошибаюсь?
                  Цитата D_KEY @
                  Думаю, что да. По крайней мере каждое конкретное применение await можно сделать руками.

                  Ну, там же ещё автоматом за локальными переменными хранится, что тоже придётся делать руками, если попытаться воспроизвести такую stackless coroutine. Это всё же разная семантика.
                  Цитата D_KEY @
                  Я ошибаюсь?

                  Ну, виртуальные методы - это сахар или нет? Руками сделать можно. Степень поддержки со стороны компилятора будет такой же, как и для async.
                    Цитата MyNameIsIgor @
                    Цитата Qraizer @
                    Делегирующие конструкторы, пользовательские литералы, override, <cstdint>, noexcept, может быть даже std::nested_exception. Не полный список. Это всё сахар,

                    Можете звать это сахаром, но это не синтаксический сахар просто по его определею - всё это новые возможности, которых раньше не было, особенно noexcept.
                    • делегирующий конструктор - метод;
                    • пользовательские литералы- #defines;
                    • override - улучшенная диагностика многих компиляторов;
                    • noexcept - throw();
                    • std::nested_exception - не заменяется, но непонятно, а занафик нужно, окромя редчайших моментов отладки.
                    Я где-то неправ?
                      Цитата Qraizer @
                      делегирующий конструктор - метод

                      Метод требует, чтобы все поля класса были сконструированы, делегирующий конструктор - нет.
                      Цитата Qraizer @
                      пользовательские литералы- #defines

                      Я подумаю... Не очень хорошо знаю пользовательские литералы. Но как минимум - засорение глобального пространства имён.
                      Цитата Qraizer @
                      override - улучшенная диагностика многих компиляторов

                      Полагаться на это можно, но потребовать её какими бы то ни было методами вы не можете. Следовательно, это новая функциональность, а не сокращённая запись старой.
                      Цитата Qraizer @
                      noexcept - throw();

                      Нет. Я могу написать
                      ExpandedWrap disabled
                        template<class T>
                        void foo(T t) noexcept(noexcept(T(t)) { /*...*/ }

                      И вообще, noexept(expression) - это константное выражение, которое я могу использовать, например, при выборе специализации шаблона.
                      Цитата Qraizer @
                      std::nested_exception - не заменяется, но непонятно, а занафик нужно, окромя редчайших моментов отладки

                      Нужно, чтобы донести до обработчика первичное исключение, если оно пролетает через несколько слоёв архитектуры, и залогировать его, чтобы знать первопричину.
                      Цитата Qraizer @
                      Я где-то неправ?

                      Мне кажется, что по всем пунктам.
                      Сообщение отредактировано: MyNameIsIgor -
                        Цитата Qraizer @
                        Я где-то неправ?

                        Вот здесь:
                        Цитата Qraizer @
                        std::nested_exception - не заменяется, но непонятно, а занафик нужно, окромя редчайших моментов отладки.

                        :)
                          Цитата Flex Ferrum @
                          Вот здесь

                          А оно чем-то заменяется?
                            Цитата MyNameIsIgor @
                            А оно чем-то заменяется?

                            В том то и дело, что нет. :) Приходится извращаться.
                              Цитата Flex Ferrum @
                              В том то и дело, что нет. Приходится извращаться.

                              Тогда почему Qraizer не прав в этом пункте?
                                Цитата MyNameIsIgor @
                                Ну, там же ещё автоматом за локальными переменными хранится, что тоже придётся делать руками

                                Да, но вот считать ли это новой семантикой?

                                Цитата
                                Ну, виртуальные методы - это сахар или нет?

                                Виртуальные методы вводят новую концепцию динамической диспетчеризации метода по типу объекта. Т.е. семантически новый вид методов. В случае await мы просто получаем ..эм.. автоматический генератор правильного для нашего случая std::future. Или мы получаем что-то еще?

                                Впрочем, какой-то мутный разговор получается :D
                                0 пользователей читают эту тему (0 гостей и 0 скрытых пользователей)
                                0 пользователей:
                                Страницы: (495) « Первая ... 491 492 [493] 494 495 


                                Рейтинг@Mail.ru
                                [ Script execution time: 0,3907 ]   [ 16 queries used ]   [ Generated: 25.04.24, 00:50 GMT ]