Dado que este wrapper de C++ se comunica con el send y recv de de C, es preferible que en vez de recibir por parámentro un [const] std::string& que reciba un char. De esta forma nos permite enviar cualquier tipo de buffer (incluso datos binarios). Se puede sobrecargar la función para que acepte tanto string como char, y en el caso de que reciba un string, llama a la otra función utilizando su puntero interno.
https://github.com/joaquinfontela/tp3-taller/blob/b5bd4fd3a8b154013e5db023b00602c0944452f4/common_src/Socket.cpp#L60
Dado que este wrapper de C++ se comunica con el send y recv de de C, es preferible que en vez de recibir por parámentro un [const] std::string& que reciba un char. De esta forma nos permite enviar cualquier tipo de buffer (incluso datos binarios). Se puede sobrecargar la función para que acepte tanto string como char, y en el caso de que reciba un string, llama a la otra función utilizando su puntero interno.