-5
由於std :: to_string不適用於我,並且此刻我正在處理一個非常困難的環境(我正在使用Android一個Linux終端模擬器),我決定讓它壞掉,用一個用戶自制的函數代替它(我發現它在線)。在std :: to_string替換函數中無法識別的std :: stringstream對象
下面是我使用的確切代碼:
g++ -std=c++11 -g -Wall -Wextra -pedantic
而且我得到這些錯誤:
unknown type name 'stm'; did you mean 'tm'?
stm << n;
^~~
我使用這些標籤編譯它
#include <sstream>
namespace patch {
template <typename T>
std::string to_string(const T &n);
std::stringstream stm;
stm << n;
return stm.str();
}
}
(然後關於tm
的聲明在include/time.h
中被聲明)
expected unqualified-id
return stm.str();
^
然後也是關閉命名空間大括號的最後一個大括號的「多餘的大括號」錯誤。
據我所知,它不承認線stm << n;
作爲方法operator <<
在std::stringstream
對象上使用,但作爲某些原因的一些變量聲明。
爲什麼我得到這些錯誤?有沒有辦法解決它們?如果沒有,我可以用什麼來取代這個解決方案?
你是否包括?你也失去了一個功能的大括號,它不應該有一個分號。 –
我以某種方式懷疑'std :: to_string'開頭有什麼問題。 – Biffen
@退休的忍者。我將聲明中的名稱空間複製並粘貼到了定義中,我忘了更改它。無論如何是的,''被包括在內,並且沒有,'std :: to_string'在任何地方都沒有找到。 –
user6245072