使用string的empty()函數判斷字符串是否爲空,但不能判斷是不是“_ ”(_ 表示空格)或者連續空格“___”;
此時可以使用 find_first_not_of ()函數進行判斷
std::string strSrc="111"; // " 222" 、 " " 、 " "、""
string::npos == strSrc.find_first_not_of(" ") //判斷非空,(查找第一個非空格字符,查不到則返回npos)
find_first_not_of () 找到第一個非入參字符並返回所在位置(地址);即在字符串中查找缺少的字符。
附:
size_t find_first_not_of ( const string& str, size_t pos = 0 ) const;
size_t find_first_not_of ( const char* s, size_t pos, size_t n ) const;
size_t find_first_not_of ( const char* s, size_t pos = 0 ) const;
size_t find_first_not_of ( char c, size_t pos = 0 ) const;
Searches for the first character in the object which is not part of either str, s or c, and returns its position.
When pos is specified the search only includes characters on or after position pos, ignoring any content in the previous character positions.