保护成员函数
<streambuf> <iostream>

std::basic_streambuf::setg

void setg (char_type* new_eback, char_type* new_gptr, char_type* new_egptr);
设置输入序列指针
设置定义受控输入序列缓冲部分的边界的指针(ebackegptr)以及获取指针本身(gptr)的值。

这是一个受保护的成员,其他成员函数可以调用它来更改描述受控输入序列缓冲部分的数组。

参数

new_eback
指向受控输入序列可访问部分开始处的指针(eback)的新值。
new_gptr
指向将由下一个输入操作访问的受控输入序列中的字符的获取指针gptr)的新值。
此值应指向 new_ebacknew_egptr 之间的某个字符。
new_egptr
指向受控输入序列可访问部分结束处的指针(egptr)的新值。
此值应指向与 new_eback 相同的数组中的某个字符。
成员类型 char_type流缓冲区(第一个类模板参数)中字符的类型。

返回值



数据竞争

修改*流缓冲区*对象。
同时访问同一*流缓冲区*对象可能会导致数据竞争。

异常安全

基本保证:如果抛出异常,*流缓冲区*处于有效状态。

无效参数会导致未定义行为

另见