Size: a a a

2020 July 30

DB

Dimmu Borgir in supapro.cxx
ладно забей)
источник

D

Danya in supapro.cxx
Dimmu Borgir
ну спросил скинул)
Я ничего не спрашивал
источник

D

Danya in supapro.cxx
Dimmu Borgir
void pushBack(T data)
 {
   T* temp = new T[size + 1];
   memcpy(temp, arr, sizeof(T) * size);
   delete[]arr;
   arr = temp;
   arr[size] = data;
   size++;
 }
Не new[]/delete[], а std::unique_ptr<T[]>
источник

DB

Dimmu Borgir in supapro.cxx
Danya
Не new[]/delete[], а std::unique_ptr<T[]>
memcpy со стрингами не работает только с примитивными типами
источник

D

Danya in supapro.cxx
Ты больше слов говори, а то не понятно к чему ты это говоришь
источник

d

disba1ancer in supapro.cxx
Vlad Doc
std::getline окраз строку принимает
перепутал cin с stdin, думал оно сишное
источник

d

disba1ancer in supapro.cxx
Dollar Føølish
А есть статья как SSO обходит стрикт альясинг рул?
а какая там проблема?
источник

ПК

Побитый Кирпич... in supapro.cxx
Dimmu Borgir
void pushBack(T data)
 {
   T* temp = new T[size + 1];
   memcpy(temp, arr, sizeof(T) * size);
   delete[]arr;
   arr = temp;
   arr[size] = data;
   size++;
 }
Варн за delete в исходниках
источник

AZ

Alexander Zaitsev in supapro.cxx
Dimmu Borgir
void pushBack(T data)
 {
   T* temp = new T[size + 1];
   memcpy(temp, arr, sizeof(T) * size);
   delete[]arr;
   arr = temp;
   arr[size] = data;
   size++;
 }
Оберните код в теги: 3 символа ``` до и после кода (в случае одиночной конструкции достаточно 1 ` с обеих сторон). Спасибо!
источник

AS

Anatoly Shirokov in supapro.cxx
Alexander Zaitsev
Оберните код в теги: 3 символа ``` до и после кода (в случае одиночной конструкции достаточно 1 ` с обеих сторон). Спасибо!
Бот сломался?
источник

🎄T

🎄🎊 R 🎅 Tb| ✡️ 🎊🎄... in supapro.cxx
Alexander Zaitsev
Оберните код в теги: 3 символа ``` до и после кода (в случае одиночной конструкции достаточно 1 ` с обеих сторон). Спасибо!
Приходится работать за бота(
источник

AZ

Alexander Zaitsev in supapro.cxx
Anatoly Shirokov
Бот сломался?
не, всё работает. false negative просто
источник

ПК

Побитый Кирпич... in supapro.cxx
Unknown T.
Ну это понятно, а вот в самой куче, как это происходит. Я представляю, что куча состоит из примерно таких блоков сырых данных:
struct Block {
   bool used;
   size_t size;
   char* data;
}

Вот изначально string попал в heap в один из таких блоков, потом ему внутри нужно больше памяти, но этот блок уже заполнен. Что происходит в этом случае?
Там связный список блоков
источник

ПК

Побитый Кирпич... in supapro.cxx
вроде указатель на след свободный блок хранит
источник

AF

Aidar Fattakhov in supapro.cxx
Dollar Føølish
А есть статья как SSO обходит стрикт альясинг рул?
Зачем ему это делать?
источник

UT

Unknown T. in supapro.cxx
Побитый Кирпич
вроде указатель на след свободный блок хранит
Да вроде просто каждый блок хранит ссылку на следующий, свободен он или нет не важно, иначе как передвигаться по занятым блокам
источник

d

disba1ancer in supapro.cxx
Unknown T.
Да вроде просто каждый блок хранит ссылку на следующий, свободен он или нет не важно, иначе как передвигаться по занятым блокам
а по ним надо передвигаться?
источник

UT

Unknown T. in supapro.cxx
disba1ancer
а по ним надо передвигаться?
Потенциально да, если писать свой аллокатор или сборщик мусора, например
источник

d

disba1ancer in supapro.cxx
Unknown T.
Потенциально да, если писать свой аллокатор или сборщик мусора, например
для аллокатора, польза сомнительна, в случае со сборщиком, очевидное решение, но есть подводные камни
источник

ПК

Побитый Кирпич... in supapro.cxx
Unknown T.
Да вроде просто каждый блок хранит ссылку на следующий, свободен он или нет не важно, иначе как передвигаться по занятым блокам
занятые свой список образуют
источник