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

    Компилятор и не может распознать такие ошибки при раздельной компиляции. В случае C++ их должен распознавать линкер.
    Хотя, конечно, гораздо красивее автоматическое создание пространств имён на модуль.
      Цитата korvin @
      В императивных языках их применяют особенно часто, поэтому это вполне обыденное и очевидное поведение.

      Покажи мне в С++ такую стандартную функцию, которая сделает с моим объектом что-то неведомое?
        Цитата MyNameIsIgor @
        Компилятор и не может распознать такие ошибки при раздельной компиляции. В случае C++ их должен распознавать линкер.
        Хотя, конечно, гораздо красивее автоматическое создание пространств имён на модуль.

        С пространствами имен может приключится то же самое, хотя и конечно шансы чуть меньше становятся.
          Цитата korvin @
          С пространствами имен в C++ может приключится то же самое, хотя и конечно шансы чуть меньше становятся.

          FIXED
          Я говорил про другие нэймспейсы, неявные, автоматические. Про модульность, короче.
            Цитата D_KEY @
            Покажи мне в С++ такую стандартную функцию, которая сделает с моим объектом что-то неведомое?

            При чем тут какое-то неведомое?

            Добавлено
            Цитата MyNameIsIgor @
            FIXED
            Я говорил про другие нэймспейсы, неявные, автоматические. Про модульность, короче.

            А как их тогда подключать, если они неявные, какие у них будут имена? По имени файла?
              Цитата korvin @
              А как их тогда подключать, если они неявные

              Указанием импорта модуля.
                Цитата MyNameIsIgor @
                Указанием импорта модуля.

                Не, это понятно, имя модуля откуда браться будет, если ns неявное?
                  Цитата korvin @
                  Не, это понятно, имя модуля откуда браться будет, если ns неявное?

                  Это может быть имя файла. Или в файле пишет modul abc.
                    Цитата korvin @
                    Цитата D_KEY @
                    Покажи мне в С++ такую стандартную функцию, которая сделает с моим объектом что-то неведомое?

                    При чем тут какое-то неведомое?

                    При том, что исходный объект будет не просто изменен, он будет "испорчен", т.е. сделать с ним что-то полезное и переносимое я не смогу.
                      http://goran-dev.blogspot.com/2011/11/blog-post.html
                      Оказывается "ноль" это ещё не самое интуитивно непонятное у абстрактных методов...
                        DesweR, тут то что не так? :D
                        Чтобы это сделать, тебе нужно явно написать реализацию и явно же ее вызывать из производных классов. Т.е. ты должен знать, что и зачем делаешь.
                        В остальном же, все будет точно так же - класс будет абстрактным, а производные классы должны будут перекрыть метод.
                        И в чем ты видешь проблему?
                          Цитата D_KEY @
                          И в чем ты видешь проблему?

                          Ну кагбэ а зачем это вообще? :-?
                            Цитата DesweR @
                            Цитата D_KEY @
                            И в чем ты видешь проблему?

                            Ну кагбэ а зачем это вообще? :-?

                            Например, для того, чтобы заставить наследника перекрыть метод. Или для того, чтобы предоставить наследнику некий базовую часть реализации(хотя тут наверно лучше завести отдельный метод). Или для чисто-виртуального деструктора(это если ты решил создать абстрактный класс, но у тебя все методы имеют вполне адекватную реализацию по умолчанию), который должен таки иметь тело(ибо будет в любом случае вызван). В общем, в большинстве случаев это действительно не нужно, но и не мешает.
                              Ну да ладно.
                                Вот ещё из свежего.
                                Но хотя уже поправили.

                                Кстати D_KEY, когнитивный диссонанс это у тебя не вызывает? :D
                                Цитата
                                Следует заметить, что если в C++03 объект считается до конца созданным когда его конструктор завершает выполнение, то в C++11 после выполнения хотя бы одного делегирующего конструктора остальные конструкторы будут работать уже над полностью сконструированным объектом.
                                1 пользователей читают эту тему (1 гостей и 0 скрытых пользователей)
                                0 пользователей:
                                Страницы: (495) « Первая ... 408 409 [410] 411 412 ...  494 495


                                Рейтинг@Mail.ru
                                [ Script execution time: 0.5247 ]   [ 14 queries used ]   [ Generated: 30.07.26, 01:21 GMT ]