gpt4 book ai didi

c++ - TinyXML 和获取值

转载 作者:行者123 更新时间:2023-11-28 03:57:28 25 4
gpt4 key购买 nike

我正在尝试使用 TinyXML (c++) 从 xml 文件加载数据。

int height = rootElem->attrib<int>("height", 480);

rootElem 是加载的 xml 文件的根元素。我想从中加载 height 值(整数)。但是我有一个包装函数来处理这些东西:

template<typename T>
T getValue(const string &key, const string &defaultValue = "")
{
return mRootElement->attrib<T>(key, defaultValue);
}

它适用于字符串:

std::string temp = getValue<std::string>("width");

并且在获取过程中失败:

int temp = getValue<int>("width");


>no matching function for call to ‘TiXmlElement::attrib(const std::string&, const std::string&)’

UPD:新版代码:

template<typename T>
T getValue(const string &key, const T &defaultValue = T())
{
return mRootElement->attrib<T>(key, defaultValue);
}

最佳答案

原因是您正在调用 TiXmlElement::attrib 的 int 版本,但是您给它一个类型为 const std::string 的 defualtValue &,然而,该函数需要一个类型为 int 的 defaultValue。

关于c++ - TinyXML 和获取值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2925268/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com