-5

简而言之,这里是代码:

std::string m_specs = "f500000";
float m_sten = 21.0;
std::cout << m_specs << std::endl;
m_specs = "f" + boost::lexical_cast<std::string>(m_sten);
std::cout << m_specs << std::endl;

第一个输出将是:

f500000

,但第二个将是

f6.70932579e+028

预期结果是

f21.0

我不知道为什么这种转换如此奇怪......我需要你的灯。先感谢您。

4

2 回答 2

2

m_stren您的代码在和之间切换m_sten

你确定你没有混淆两个不同但名称相似的变量吗?

于 2015-01-26T21:28:51.847 回答
-1

好吧,我找到了解决方案,实际上 m_sten 并没有真正声明。我忘了用函数声明它。感谢您对此的关注。

于 2015-01-27T19:53:11.147 回答