首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >是否有官方资源供粘性机械手使用?

是否有官方资源供粘性机械手使用?
EN

Stack Overflow用户
提问于 2016-10-31 11:52:35
回答 2查看 389关注 0票数 1

标准是否定义了哪些iomanip操作器是粘性的,哪些不是?

我不断地发现自己指的是:https://stackoverflow.com/a/1533222/2642059

这是一个很好的答案,但他甚至说:

在我的版本

这再加上我在http://en.cppreference.comhttp://www.cplusplus.com上找不到粘性的概念,我想知道这是否是一个实现定义的概念。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2016-11-02 02:51:52

不是“官方”,而是cppreference.com在std::setw里说的

如果调用以下函数之一,流的宽度属性将重置为零(意为“未指定的”):

  • 输入
代码语言:javascript
复制
1. [`operator>>(basic_istream&, basic_string&)`](http://en.cppreference.com/w/cpp/string/basic_string/operator_ltltgtgt)
2. [`operator>>(basic_istream&, char*)`](http://en.cppreference.com/w/cpp/io/basic_istream/operator_gtgt2)

  • 输出
代码语言:javascript
复制
1. Overloads 1-7 of [`basic_ostream::operator<<()`](http://en.cppreference.com/w/cpp/io/basic_ostream/operator_ltlt) (at Stage 3 of [`num_put::put()`](http://en.cppreference.com/w/cpp/locale/num_put/put)) (1-7 are the integer, boolean, and pointer overloads)
2. [`operator<<(basic_ostream&, char)`](http://en.cppreference.com/w/cpp/io/basic_ostream/operator_ltlt2) and [`operator<<(basic_ostream&, char*)`](http://en.cppreference.com/w/cpp/io/basic_ostream/operator_ltlt2)
3. [`operator<<(basic_ostream&, basic_string&)`](http://en.cppreference.com/w/cpp/string/basic_string/operator_ltltgtgt)
4. [`std::put_money`](http://en.cppreference.com/w/cpp/io/manip/put_money) (inside [`money_put::put()`](http://en.cppreference.com/w/cpp/locale/money_put/put))
5. [`std::quoted`](http://en.cppreference.com/w/cpp/io/manip/quoted) (when used with an output stream)

此列表作为cppreference 他说中的编辑历史记录,是通过对“宽度”的标准草案进行添加来编译的。

所有其他操纵器都是“粘稠的”,就像它们执行的流状态更改一样,持久化直到再次显式更改。

票数 2
EN

Stack Overflow用户

发布于 2016-10-31 11:59:41

在标准的C++库中,并不存在粘性/非粘性操作器的概念。标准C++库中唯一的非粘性操作程序是width()。其他任何标准格式标志都不会作为输入或输出的一部分进行更改。用户操作符做什么以及使用后是否重置设置完全取决于他们。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/40341630

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档