The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]



Индекс форумов
Составление сообщения

Исходное сообщение
"Спецификация C++0X принята в качестве международного стандар..."
Отправлено barmaglot, 15-Авг-11 16:14 
Наконец-то !
Особенно радует:
1. Стандартизация регекспов
2. Возможность создания шаблона функции, возвращаемый тип которого определяется автоматически на основании другой функции или выражения;
3. Возможность создавать шаблоны с переменным количеством аргументов;
4. Расширенная поддержка символов в Unicode;
5. Возможность вызывать одни конструкторы класса из других конструкторов этого же класса, что позволяет создавать конструкторы, использующие другие конструкторы без дублирования кода; (Наконец-то!!!)
6. Возможность использования локальных и безымянных типов в качестве аргументов шаблонов;
7. alignments
8. constexpr
9. decltype
10. control of defaults: default and delete && control of defaults: move and copy
11. Preventing narrowing
12. override controls: override
13. override controls: final
14. Static (compile-time) assertions -- static_assert - изумительно. Хотя вобщем-то обходились раньше своими средствами.
15. template alias - О ДА !!!
16. Container improvements: Initializer lists, Move operators, Improved push operations, Scoped allocators

Неоднозначно:
1. atomic operations - с одной стороны хорошо: стандартизация атомарных операций; с другой плохо: атомарные операции будут определены в userland. Непонятно как это скажется на производительности по сравнению с POSIX mutex-ами. Но уже хорошо, что для использования атомарных операций, необходим специфический синтаксис, - пересечений и конфликтов с существующей кодовой базой использующей POSIX threads wrappers небудет ... Или всё-таки будет если код будет смешаным ? Неясно.
2. Rvalue references - зрэ это они. Стандартная семантика lvalue/rvalue проста как топор, и слава богу! Введение  move запутает семантику, и в резулътате уменьшает прозрачность кода.


Пугает:
1. Вместо макроса NULL для обозначения нулевого указателя введено ключевое слово nullptr.  При этом nullptr не является зарезервированым. Это страшно ...
2. attributes. Обязательно найдутся вендоры, которые создадут диалекты.


В общем стандарт как стандарт, хорошо что уже приняли наконец-то.

 

Ваше сообщение
Имя*:
EMail:
Для отправки ответов на email укажите знак ! перед адресом, например, !user@host.ru (!! - не показывать email).
Более тонкая настройка отправки ответов производится в профиле зарегистрированного участника форума.
Заголовок*:
Сообщение*:
 
При общении не допускается: неуважительное отношение к собеседнику, хамство, унизительное обращение, ненормативная лексика, переход на личности, агрессивное поведение, обесценивание собеседника, провоцирование флейма голословными и заведомо ложными заявлениями. Не отвечайте на сообщения, явно нарушающие правила - удаляются не только сами нарушения, но и все ответы на них. Лог модерирования.



Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру