LINUX.ORG.RU

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

Исправление 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.