我從這篇文章中學到了在命名空間中創建幫助函數的方法。 'Helper' functions in C++如何避免輔助函數被警告? 「xxx定義但未使用」
//stringhelper.hpp
namespace utility{
static std::string intToString(int integer)
{
std::stringstream sstream;
sstream << integer;
return sstream.str();
}
static void toLowerCase(std::string& y)
{
std::transform(y.begin(), y.end(), y.begin(), (int(*)(int))tolower);
}
}
包括我這個頭,但我得到了以下警告
'void utility::toLowerCase(std::string&)' defined but not used
是。我使用了intToString(int整數),但不是toLowerCase(std :: string &)。我不希望看到這些警告或每個標題劃分一個幫助程序功能。
任何人都可以提出一個好的解決方案嗎?我應該禁用警告嗎?謝謝
什麼是你的編譯器?警告及其啓用和禁用是特定於編譯器的。 –
當然是GCC。沒有其他編譯器會在意。 –
考慮到你使用它們的方式(包括從一個頭文件中獲得,因此它們在每個翻譯單元中具有相同的定義),使它們成爲「內聯」而不是「靜態」會更有意義。有沒有什麼特別的理由讓你想讓他們內部聯繫? –