LINUX.ORG.RU

История изменений

Исправление Ygor, (текущая версия) :

опасность переполнения при умножении на 2.

Есть и это даже скомпилится, но упадёт при выполнении:

auto array = new long long[3000000000];

Естественно ни в куче ни на стёке не даёт алоцировать столько памяти:

terminate called after throwing an instance of 'std::bad_alloc'
  what():  std::bad_alloc

Даёт создать безпроблемно только такой массив булов, но в примере по сути инты.

Исходная версия Ygor, :

опасность переполнения при умножении на 2.

Есть и это даже скомпилится, но упадёт при выполнении:

auto array = new long long[3000000000];

Естественно ни в куче ни на стёке не даёт алоцировать столько памяти:

terminate called after throwing an instance of 'std::bad_alloc'
  what():  std::bad_alloc