Здравствуйте, гость ( Вход | Регистрация )
![]() ![]() |
|
Iron Bug |
18.11.2011, 16:01
Сообщение
#1
|
![]() Профессионал ![]() ![]() ![]() ![]() ![]() Группа: Модератор Сообщений: 1611 Регистрация: 6.2.2009 Из: Yekaterinburg Пользователь №: 533 Спасибо сказали: 219 раз(а) Репутация: 12
|
Вот, положу-ка я сюда полезные линки по фичам нового стандарта С++, для просвещения молодёжи
Я последние дни сидела и ковыряла новые возможности C++. Честно говоря, даже для меня некоторые вещи оказались неожиданными и очень полезными. А вы умеете передавать параметры функций без операций копирования памяти? Теперь с С++ это возможно! Link Эту статью вообще полезно прочитать всем, кто пишет на C++. У этого автора есть другие статьи и ссылки на полезные материалы: Link Также там я нашла ссылку на весьма любопытный сайт, посвящённый вопросам современного С++: Link Там есть интересные вещи про оптимизацию. Например: Link Для любителей головоломок с шаблонами: Variadic templates (шаблоны с переменным числом аргументов): Link (документ pdf) Пока поддерживается GCC и MinGW. Часть примеров реально используется в бусте, в библиотеке interprocess. Вот пока самое ценное, что я накопала по новому стандарту. Появится ещё полезный материал - буду сюда ссылки кидать. Сообщение отредактировал Iron Bug - 18.11.2011, 16:01 |
|
|
|
|
ViGOur |
19.11.2011, 17:41
Сообщение
#2
|
![]() Мастер ![]() ![]() ![]() ![]() ![]() ![]() Группа: Модератор Сообщений: 3296 Регистрация: 9.10.2007 Из: Москва Пользователь №: 4 Спасибо сказали: 231 раз(а) Репутация: 40
|
Ну тогда сюда просто необходимо так же добавить описание работы с таким нововведением как Link
А так же:Link, пример:
|
|
|
|
|
Iron Bug |
19.11.2011, 23:43
Сообщение
#3
|
![]() Профессионал ![]() ![]() ![]() ![]() ![]() Группа: Модератор Сообщений: 1611 Регистрация: 6.2.2009 Из: Yekaterinburg Пользователь №: 533 Спасибо сказали: 219 раз(а) Репутация: 12
|
ну, это простые и понятные мелочи. по ним есть исчерпывающие примеры на обычных сайтах. я искала подробные статьи по сложным нововведениям.
лямбда функции в бусте сто лет назад появились, я даже и не обратила на них внимания да и range-based loops, по сути - чисто синтаксис. код там тот же самый, что и раньше, при объявлении через итератор. просто пишется кратко. но может, и это кому-то пригодится. а вот rvalue reference - это уже совершенно новый метод работы с памятью. так же как и variadic templates. у них нет аналогов или замен в предыдущих стандартах. особенно последнюю фичу я долго ждала. и дико обломалась, когда узнала, что мелкософт на неё просто забил в VC++ 11. теперь под вендой пока юзаю MinGW, хотя отладка там неудобная. |
|
|
|
|
Iron Bug |
22.10.2013, 23:13
Сообщение
#4
|
![]() Профессионал ![]() ![]() ![]() ![]() ![]() Группа: Модератор Сообщений: 1611 Регистрация: 6.2.2009 Из: Yekaterinburg Пользователь №: 533 Спасибо сказали: 219 раз(а) Репутация: 12
|
В новой студии Microsoft Visual Studio 2013 появилась поддержка Variadic templates (стандарт С++11).
У них это не поддерживалось, когда-то давно я им об этом писала - вот, сообщили, что сделали, наконец-то. Я даже удивилась Цитата Variadic templates are supported in Visual Studio 2013. See Link for the full list. Ну и какбэ новая студия выпущена, 2013-я. Пройдя по ссылке выше, можно про неё прочитать. Там ещё дополнения по стандарту есть. Кстати, там можно скачать студию 2013: Link Триальные версии - 30 дней, плюс Express, как всегда. Ещё появилась какая-то шняга для тестирования и ведения проектов (как я поняла) - Visual Studio Test. Для скачивания нужна только регистрация на их сайте (это бесплатно и делается моментально). Скачаем - посмотрим. Сообщение отредактировал Iron Bug - 23.10.2013, 7:13 |
|
|
|
|
Анна |
3.12.2013, 13:23
Сообщение
#5
|
![]() Активный участник ![]() ![]() ![]() Группа: Участник Сообщений: 276 Регистрация: 22.5.2008 Из: Зеленоград Пользователь №: 181 Спасибо сказали: 30 раз(а) Репутация: 4
|
Пока никак не сталкивалась с новым стандартом на практике , зато литературе несколько раз встречала с таким описанием класса
Правильно ли понимаю, что без Foo(const Foo&) = delete; по новому стандарту, встретив что-то вроде компилятор сам сгенерит конструктор для копии, а с Foo(const Foo&) = delete; такая самодеятельность приведёт к ошибке? |
|
|
|
|
Iron Bug |
3.12.2013, 13:50
Сообщение
#6
|
![]() Профессионал ![]() ![]() ![]() ![]() ![]() Группа: Модератор Сообщений: 1611 Регистрация: 6.2.2009 Из: Yekaterinburg Пользователь №: 533 Спасибо сказали: 219 раз(а) Репутация: 12
|
обычно компилятор сам генерит конструкторы по умолчанию. default лишь ещё раз явно это указывает.
а delete запрещает эту автогенерацию. P.S. компилятор от мелкософта просто игнорирует данные настройки. он хоть и не ругается, но и ничего не делает. Сообщение отредактировал Iron Bug - 3.12.2013, 13:58 |
|
|
|
|
Litkevich Yuriy |
4.12.2013, 12:30
Сообщение
#7
|
![]() разработчик РЭА ![]() ![]() ![]() ![]() ![]() ![]() ![]() Группа: Сомодератор Сообщений: 9669 Регистрация: 9.1.2008 Из: Тюмень Пользователь №: 64 Спасибо сказали: 807 раз(а) Репутация: 94
|
чёт я относительно delete не понял. Само слово никакого запрета не подразумевает, а подразумевает удаление чего-либо.
Да и чтобы запретить внешний вызов конструктора копирования его достаточно в раздел private поместить. |
|
|
|
|
Iron Bug |
4.12.2013, 13:14
Сообщение
#8
|
![]() Профессионал ![]() ![]() ![]() ![]() ![]() Группа: Модератор Сообщений: 1611 Регистрация: 6.2.2009 Из: Yekaterinburg Пользователь №: 533 Спасибо сказали: 219 раз(а) Репутация: 12
|
Цитата(Litkevich Yuriy @ 4.12.2013, 15:30) Link чёт я относительно delete не понял. Само слово никакого запрета не подразумевает, а подразумевает удаление чего-либо. тут не надо ничего понимать. надо читать спецификацию на С++11. |
|
|
|
![]() ![]() ![]() |
|
Текстовая версия | Сейчас: 29.12.2025, 23:27 |