受保護的虛擬成員函式
<fstream>

std::filebuf::underflow

int underflow();
在下溢時獲取字元
返回輸入流當前位置的字元,且不移動輸入位置指標。

在此之前,此函式會嘗試從關聯的檔案讀取字元,並且(如果物件持有中間緩衝區)透過修改內部輸入緩衝區指標(gptregptreback)來使其可用。

如果沒有更多可用字元,並且該函式未能從關聯的檔案讀取更多字元,則返回檔案結束值(EOF),表示失敗。

此虛擬成員函式重寫了繼承的成員 streambuf::underflow。當獲取指標gptr)沒有可用讀取位置時,像 sgetc 這樣的成員會呼叫它來請求新字元。

此成員函式與 uflow 的行為類似,但輸入位置不移動。

引數



返回值

受控輸入序列中當前位置的字元,轉換為 int 型別的值。
如果受控輸入序列中沒有更多可讀字元,則返回檔案結束值(EOF)。

資料競爭

修改 filebuf 物件。
同時訪問同一個檔案流緩衝區物件可能導致資料爭用。

異常安全

基本保證:如果丟擲異常,*檔案流緩衝區*處於有效狀態。

另見