<?xml version="1.0" encoding="utf-8"?>
<rss version="2.0"
					xmlns:content="http://purl.org/rss/1.0/modules/content/"
					xmlns:wfw="http://wellformedweb.org/CommentAPI/"
					xmlns:atom="http://www.w3.org/2005/Atom"
				  >
<channel>
<atom:link rel="self"  type="application/rss+xml"  href="http://rulinux.net/rss_from_sect_1_subsect_3_thread_34358"  />
<title>rulinux.net - Новости - OpenSource - Спецификация C++0X принята в качестве международного стандарта C++11 </title>
<link>http://rulinux.net/</link>
<description><![CDATA[Портал о GNU/Linux и не только]]></description>
<image><title>rulinux.net - Новости - OpenSource - Спецификация C++0X принята в качестве международного стандарта C++11 </title>
<link>http://rulinux.net/</link>
<url>http://rulinux.net/rss_icon.png</url>
</image>
<item>
<title>Re: Спецификация C++0X принята в качестве международного стандарта C++11 </title>
<link>https://rulinux.net/message.php?newsid=34358&amp;page=1#103774</link>
<guid>https://rulinux.net/message.php?newsid=34358&amp;page=1#103774</guid>
<pubDate>Wed, 07 Sep 2011 07:24:14 +0400</pubDate>
<description><![CDATA[<p><i>> Основные улучшения, отраженные в стандарте C++11: ...</i><br> Теперь я совсем перестану понимать це++. Хотя и текущий для меня уже на уровне иероглифов.</p>]]></description>
</item>
<item>
<title>Re: Спецификация C++0X принята в качестве международного стандарта C++11 </title>
<link>https://rulinux.net/message.php?newsid=34358&amp;page=1#103773</link>
<guid>https://rulinux.net/message.php?newsid=34358&amp;page=1#103773</guid>
<pubDate>Mon, 15 Aug 2011 18:06:45 +0400</pubDate>
<description><![CDATA[<p>До лиспа ещё далеко</p>]]></description>
</item>
<item>
<title>Re: Спецификация C++0X принята в качестве международного стандарта C++11 </title>
<link>https://rulinux.net/message.php?newsid=34358&amp;page=1#103772</link>
<guid>https://rulinux.net/message.php?newsid=34358&amp;page=1#103772</guid>
<pubDate>Mon, 15 Aug 2011 10:52:07 +0400</pubDate>
<description><![CDATA[<p>Клевая капча</p>]]></description>
</item>
<item>
<title>Re: Спецификация C++0X принята в качестве международного стандарта C++11 </title>
<link>https://rulinux.net/message.php?newsid=34358&amp;page=1#103771</link>
<guid>https://rulinux.net/message.php?newsid=34358&amp;page=1#103771</guid>
<pubDate>Sun, 14 Aug 2011 22:39:16 +0400</pubDate>
<description><![CDATA[<p><i>> А чем оно лучше java?</i><br> Тем, что в разы быстрее обрабатывает массивы?</p>]]></description>
</item>
<item>
<title>Re: Спецификация C++0X принята в качестве международного стандарта C++11 </title>
<link>https://rulinux.net/message.php?newsid=34358&amp;page=1#103770</link>
<guid>https://rulinux.net/message.php?newsid=34358&amp;page=1#103770</guid>
<pubDate>Sun, 14 Aug 2011 19:59:44 +0400</pubDate>
<description><![CDATA[<p>А чем оно лучше java?</p>]]></description>
</item>
<item>
<title>Re: Спецификация C++0X принята в качестве международного стандарта C++11 </title>
<link>https://rulinux.net/message.php?newsid=34358&amp;page=1#103769</link>
<guid>https://rulinux.net/message.php?newsid=34358&amp;page=1#103769</guid>
<pubDate>Sun, 14 Aug 2011 18:17:39 +0400</pubDate>
<description><![CDATA[<p>№-ная разметка</p><p>поправьте  пожалуйста.</p>]]></description>
</item>
<item>
<title>Спецификация C++0X принята в качестве международного стандарта C++11 </title>
<link>https://rulinux.net/message.php?newsid=34358&amp;page=1#103768</link>
<guid>https://rulinux.net/message.php?newsid=34358&amp;page=1#103768</guid>
<pubDate>Sun, 14 Aug 2011 18:15:25 +0400</pubDate>
<description><![CDATA[ 
<p>Завершилась длительная эпопея по принятию нового стандарта для языка программирования Си++. Комитет ISO по стандартизации языка C++ единогласно утвердил спецификацию C++0X в качестве международного стандарта "C++11". Стандарт C++0X планировалось выпустить еще в 2008 году, но его принятие постоянно откладывалось. Большинство представленных в стандарте возможностей уже поддерживаются в таких компиляторах, как GCC, IBM C++, Intel C++ и Visual C++. Поддерживающие C++11 стандартные библиотеки реализованы в рамках проекта Boost.</p>
<p>Новый стандарт развивался более 10 лет и пришел на смену стандартам C++98 и C++03. Отмечается, что если различия между стандартами C++98 и C++03 были столь незначительными, что их можно было не заметить, то стандарт C++11 содержит ряд кардинальных улучшений, как самого языка, так и стандартной библиотеки. По словам Бьерна Страуструпа, создателя C++, C++11 ощущается как новый язык, части которого лучше сочетаются друг с другом. В C++11 высокоуровневый стиль программирования стал более естественным, а эффективность возросла как никогда раньше. Кроме того, язык стал проще для изучения и освоения новичками.</p>
<p>Основные улучшения, отраженные в стандарте C++11:</p>
<ul>
  <li>Расширение стандартной библиотеки в таких областях, как регулярные выражения, хэши, генераторы случайных чисел, интеллектуальные указатели и т.п.</li>
  <li>Поддержка лямбда-выражений и лямбда-функций, т.е. анонимных функций, объявляемых в месте использования. Например, "[](int x, int y) { return x + y; }"</li>
  <li>Поддержка списков инициализации, т.е. передачи структуры или массива в виде списка значений. Например: для конструктора или функции Test можно указать шаблонный класс std::initializer_list и затем для инициализации использовать "Test testVar = {1, 2, 3, 4};" или "Test(1,2,3,4,5)";</li>
  <li>Универсальная форма инициализации для всех видов объектов с помощью расширения синтаксиса списков инициализации;</li>
  <li>Поддержка ключевого слова "decltype" для определения типа выражения во время компиляции, например, можно указать "decltype(someVar) otherIntegerVariable = 5;";</li>
  <li>Возможность автоматического назначения типа при указании ключевого слова "auto". Тип выбирается на основании анализа типа аргумента. Например, "auto otherVariable = 5;";</li>
  <li>Возможность создания шаблона функции, возвращаемый тип которого определяется автоматически на основании другой функции или выражения;</li>
  <li>Аналог циклов "foreach" для перебора элементов коллекции. Например, для перебора элементом массива my_array достаточно указать "for(int &amp;x : my_array)";</li>
  <li>Реализация нового типа ссылок на временные объекты (Rvalue Referencea), объявляемые через выражение "type &amp;&amp;";</li>
  <li>Реализация ключевого слова "constexpr", позволяющего указать, что выражение (функция или конструктор) возвращает константу и данные выражения можно использовать как константы, например: "constexpr int GetFive() {return 5;}". В дальнейшем GetFive можно указать, например, при определении массива "int some_value[GetFive() + 7];";</li>
  <li>Ослаблены требования при определении типов простых данных. Например, как тип простых данных могут рассматриваться классы, при соблюдении ряда правил;</li>
  <li>Поддержка определения внешних шаблонов, позволяющих увеличить скорость компиляции;</li> 
  <li>Возможность создавать шаблоны с переменным количеством аргументов;</li>
  <li>Расширенная поддержка символов в Unicode;</li>
  <li>Возможность вызывать одни конструкторы класса из других конструкторов этого же класса, что позволяет создавать конструкторы, использующие другие конструкторы без дублирования кода;</li>
  <li>Возможность использования локальных и безымянных типов в качестве аргументов шаблонов;</li>
  <li>Вместо макроса NULL для обозначения нулевого указателя введено ключевое слово nullptr.</li>
</ul>
<p>Основной линк &nbsp;<a href="http://www2.research.att.com/~bs/C%2B%2B0xFAQ.html">http://www2.research.att.com/~bs/C%2B%2B0xFAQ.html</a></p>
<p>Цельнотянуто с Opennet.ru</p><br />

&gt;&gt;&gt; <a href="http://www.opennet.ru/opennews/art.shtml?num=31476">Подробнее</a></p>]]></description>
</item>
</channel>
</rss>