Char и dynamic выделены 0 размеров void «переменная», а не массивC++

Программы на C++. Форум разработчиков
Ответить
Anonymous
 Char и dynamic выделены 0 размеров void «переменная», а не массив

Сообщение Anonymous »

Я рефакторирую свой C ++/C# DLL для "Эффективного памяти". Важный. Эффективная память, и на самом деле боль.
, кого это волнует, мы можем динамически распределить пустоту. В моем коде: < /p>

Код: Выделить всё

static const void* padfree = operator new(_arr);    //this ignores memory padding
static const void* universal = operator new[](_arr);    //used to putting anything
operator new int[];    //ohno he's immortal
Если _arr s 0 Однако этот код становится более сложным для меня:

Код: Выделить всё

static const void* rawmem = operator new(0);    //heap perserved but not actually used
static const void* onlyptr = operator new[](0);    //pointer only
operator new int(0);    //even he alive??
Я правильно понимаю? Насколько я понимаю, нет указателя. Если так, почему не использовать char ? Есть ли какие -либо преимущества или плюсы для оператора нового (0) ? Могу ли я для них тоже? Заранее: я не могу использовать std :: vector .

Подробнее здесь: https://stackoverflow.com/questions/795 ... -not-array
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «C++»