diff --git a/modules/openapi-generator/src/main/resources/cpp-rest-sdk-client/apiclient-source.mustache b/modules/openapi-generator/src/main/resources/cpp-rest-sdk-client/apiclient-source.mustache index 3650945081ca..b6f58e86525f 100644 --- a/modules/openapi-generator/src/main/resources/cpp-rest-sdk-client/apiclient-source.mustache +++ b/modules/openapi-generator/src/main/resources/cpp-rest-sdk-client/apiclient-source.mustache @@ -3,6 +3,18 @@ #include "MultipartFormData.h" #include "ModelBase.h" +#include +#include +#include + +template +utility::string_t toString(const T value) +{ + std::ostringstream out; + out << std::setprecision(std::numeric_limits::digits10) << std::fixed << value; + return out.str(); +} + {{#apiNamespaceDeclarations}} namespace {{this}} { {{/apiNamespaceDeclarations}} @@ -46,12 +58,12 @@ utility::string_t ApiClient::parameterToString(int32_t value) utility::string_t ApiClient::parameterToString(float value) { - return utility::conversions::to_string_t(std::to_string(value)); + return utility::conversions::to_string_t(toString(value)); } utility::string_t ApiClient::parameterToString(double value) { - return utility::conversions::to_string_t(std::to_string(value)); + return utility::conversions::to_string_t(toString(value)); } utility::string_t ApiClient::parameterToString(const utility::datetime &value) diff --git a/samples/client/petstore/cpp-restsdk/ApiClient.cpp b/samples/client/petstore/cpp-restsdk/ApiClient.cpp index 9b7ae17bd823..1a9ac7df1f1c 100644 --- a/samples/client/petstore/cpp-restsdk/ApiClient.cpp +++ b/samples/client/petstore/cpp-restsdk/ApiClient.cpp @@ -13,6 +13,18 @@ #include "MultipartFormData.h" #include "ModelBase.h" +#include +#include +#include + +template +utility::string_t toString(const T value) +{ + std::ostringstream out; + out << std::setprecision(std::numeric_limits::digits10) << std::fixed << value; + return out.str(); +} + namespace org { namespace openapitools { namespace client { @@ -57,12 +69,12 @@ utility::string_t ApiClient::parameterToString(int32_t value) utility::string_t ApiClient::parameterToString(float value) { - return utility::conversions::to_string_t(std::to_string(value)); + return utility::conversions::to_string_t(toString(value)); } utility::string_t ApiClient::parameterToString(double value) { - return utility::conversions::to_string_t(std::to_string(value)); + return utility::conversions::to_string_t(toString(value)); } utility::string_t ApiClient::parameterToString(const utility::datetime &value)