Я наткнулся на то, что вызывает его генерация:
Метод параметраToString(...) имеет множество прототипов и без проблем используется, когда его аргумент имеет примитивный тип.
Но он вызывает ошибку компиляции для своего шаблонного const std: :shared_ptr& value или const boost::optional& value:
Метод объявлен в созданном файле ApiClient.h:
Код: Выделить всё
/*
* ApiClient.h
* This is an API client responsible for stating the HTTP calls
*/
// [...]
class ApiClient
{
public:
// [...]
static utility::string_t parameterToString(utility::string_t value);
static utility::string_t parameterToString(int32_t value);
static utility::string_t parameterToString(int64_t value);
static utility::string_t parameterToString(float value);
static utility::string_t parameterToString(double value);
static utility::string_t parameterToString(const utility::datetime &value);
static utility::string_t parameterToString(bool value);
template
static utility::string_t parameterToString(const std::vector& value);
template
utility::string_t parameterToString(const boost::optional& value);
template
utility::string_t parameterToString(const boost::optional& value);
template
static utility::string_t parameterToString(const std::shared_ptr& value);
// [...]
};
template
utility::string_t ApiClient::parameterToString(const std::vector& value)
{
utility::stringstream_t ss;
for( size_t i = 0; i < value.size(); i++)
{
if( i > 0) ss
Подробнее здесь: [url]https://stackoverflow.com/questions/79021121/why-a-templateclass-t-parametertostringconst-stdshared-ptrt-value-metho[/url]