要測試stringstream
的準確性和穩定性,可以編寫一些測試用例來驗證其功能
#include<iostream>
#include <sstream>
#include<string>
#include <cassert>
void test_stringstream() {
// 測試1:基本輸入輸出
std::stringstream ss1;
ss1 << "Hello, World!";
std::string str1;
ss1 >> str1;
assert(str1 == "Hello,");
ss1 >> str1;
assert(str1 == "World!");
// 測試2:數值轉換
std::stringstream ss2;
ss2 << "123 456.789";
int int_val;
float float_val;
ss2 >> int_val;
assert(int_val == 123);
ss2 >> float_val;
assert(float_val == 456.789f);
// 測試3:字符串拼接
std::stringstream ss3;
ss3 << "Hello" << ", " << "World!"<< std::ends;
std::string str3 = ss3.str();
assert(str3 == "Hello, World!");
// 測試4:錯誤處理
std::stringstream ss4("123 abc");
int int_val4;
std::string str_val4;
ss4 >> int_val4;
assert(int_val4 == 123);
ss4 >> str_val4;
assert(ss4.fail());
}
int main() {
test_stringstream();
std::cout << "All tests passed."<< std::endl;
return 0;
}
這個示例包含了四個測試用例,分別測試了stringstream
的基本輸入輸出、數值轉換、字符串拼接和錯誤處理。通過運行這些測試用例,可以驗證stringstream
的準確性和穩定性。當然,你可以根據需要添加更多的測試用例來覆蓋更多的場景。