История изменений
Исправление MOPKOBKA, (текущая версия) :
Вас ничего не смущает?
А если без загадок? Все работает без ворнингов. return лишний, его нужно убрать, пропустил.
ИМХО тут х3 использованной памяти из-за преобразования char* в это ваше std::initializer_list<std::initializer_list<const char*>> strarr
В данном случае это виртуальные структуры, они не копируют и не появляются по настоящему, с учетом флага оптимизации конечно же. Поэтому копирование происходит только в buff, оно неизбежно.
Исправление MOPKOBKA, :
Вас ничего не смущает?
А если без загадок? Все работает без ворнингов. return лишний, его нужно убрать, пропустил.
ИМХО тут х3 использованной памяти из-за преобразования char* в это ваше std::initializer_list<std::initializer_list<const char*>> strarr
В данном случае это виртуальные структуры, они не копируют и не появляются по настоящему, с учетом флага оптимизации конечно же. Поэтому копирование происходит только в buff.
Исходная версия MOPKOBKA, :
Вас ничего не смущает?
А если без загадок? Все работает без ворнингов.
ИМХО тут х3 использованной памяти из-за преобразования char* в это ваше std::initializer_list<std::initializer_list<const char*>> strarr
В данном случае это виртуальные структуры, они не копируют и не появляются по настоящему, с учетом флага оптимизации конечно же. Поэтому копирование происходит только в buff.