Уж если наворотили C++, используйте std::move.
Вы пытаетесь отстрелить себе ногу.
Когда в одном коде активно применяют сборщик мусора, и пытаются влепить низкоуровневую функцию из C, потому что где-то слышали, что это быстро, при этом размер держат в целочисленной переменной, мне становится грустно.
Правильный учебник по написанию приложений TCP/IP называется "Эффективное использование TCP/IP" под авторством Й. Снейдера.