<?xml version='1.0' encoding="utf-8"?>
      <rss version='2.0'>
      <channel>
      <title>Форум на Исходниках.RU</title>
      <link>https://forum.sources.ru</link>
      <description>Форум на Исходниках.RU</description>
      <generator>Форум на Исходниках.RU</generator>
  	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=420973&amp;view=findpost&amp;p=3845170</guid>
        <pubDate>Wed, 03 Mar 2021 10:03:47 +0000</pubDate>
        <title>vector и переход от 32 бит к 64</title>
        <link>https://forum.sources.ru/index.php?showtopic=420973&amp;view=findpost&amp;p=3845170</link>
        <description><![CDATA[MaIron: Нужно смотреть пример. <br>max_size Вычисляется по формуле и зависит от типа переменной в векторе и от системы.<br><br>On 32 bit System.<br>std::vector&lt;char&gt;::max_size() returns 232-1, size of char — 1 byte<br>std::vector&lt;int&gt;::max_size() returns 230-1, size of int — 4 byte<br>std::vector&lt;double&gt;::max_size() returns 229-1, size of double — 8 byte<br><br>max_size () - это теоретическое максимальное количество элементов, которое может быть помещено в ваш вектор. В 32-битной системе теоретически можно выделить 4 Гб == 2 ^ 32, что составляет 2 ^ 32 символьных значения, 2 ^ 30 значений int или 2 ^ 29 двойных значений. Казалось бы, ваша реализация использует это значение, но вычитает 1.<br><br>Конечно, вы никогда не сможете выделить такой большой вектор в 32-битной системе; у вас закончится память задолго до этого.<br><br>Нет никаких требований относительно того, какое значение возвращает max_size (), кроме того, что вы не можете выделить вектор большего размера.<br> В 64-битной системе он может вернуть 2 ^ 64-1 для char или может вернуть меньшее значение, потому что система имеет только ограниченное пространство памяти. <br>В любом случае 64-битные ПК часто ограничены 48-битным адресным пространством.]]></description>
        <author>MaIron</author>
        <category>Visual C++ / MFC / WTL</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=420973&amp;view=findpost&amp;p=3842583</guid>
        <pubDate>Sat, 05 Dec 2020 05:41:37 +0000</pubDate>
        <title>vector и переход от 32 бит к 64</title>
        <link>https://forum.sources.ru/index.php?showtopic=420973&amp;view=findpost&amp;p=3842583</link>
        <description><![CDATA[a_n_y_a: Перенес проект из 32 бит в 64 бита, функция size() возвращает 8-ми байтовую переменную, но max_size() меньше&#33; max_size() возвращает:<br>
<div class='tag-code'><span class='pre_code'></span><div class='code  code_collapsed ' title='Подсветка синтаксиса доступна зарегистрированным участникам Форума.' style=''><div><div><ol type="1"><div class="code_line">768614336404564650 &nbsp;- &nbsp;десятичное</div><div class="code_line">AAA AAAA AAAA AAAA‬ &nbsp;- &nbsp;тоже шестнадцатеричное</div></ol></div></div></div></div><script>preloadCodeButtons('1');</script><br>
Почему не F а А? Для 32 бит FFFFFFFF  и 4294967295&#33; И почему длина меньше на 4 бита?]]></description>
        <author>a_n_y_a</author>
        <category>Visual C++ / MFC / WTL</category>
      </item>
	
      </channel>
      </rss>
	