c++ - "my_ifstream >> my_char"记录在哪里?

标签 c++

我正在使用“cin >> my_char”在我试图解析的输入记录中放置一个“:”。这是一个最小的例子。

#include <iostream>
#include <iomanip>
#include <fstream>
#include <string>

using namespace std;

int main () {
    char c;
    int x, y;

    cin >> hex >> x >> hex >> c >> y;
    cout << "x = " << x << "\ny = " << y << "\n";
}

和示例用法:

rc@timecube:/tmp$ g++ test.cpp && echo "0000a:ffff" | ./a.out 
x = 10
y = 65535

这段代码完全符合我的要求,但我不明白为什么。我希望看到类似的内容:

istream& operator>> (char& val);

在 istream 引用 here ,但我没有。

那么这种行为是如何记录的呢?

最佳答案

the free functions .

并非所有运营商都是成员(member)!

关于c++ - "my_ifstream >> my_char"记录在哪里?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29610556/

相关文章:

c++ - C++中的 map 与多 map (性能)

C++ 自定义模板 LinkedList 崩溃添加 std::string

c++ - 获取私有(private)实例变量容器成员值的最佳方法

c++ - 如何使用 Open MPI 使我的程序更快?我的 Open MPI 程序目前比原来的程序慢,我不明白什么?

c++ - 覆盖与虚拟

c++ - 虚拟继承与非默认构造函数

c++ - C++流缓冲区和刷新

c++ - 我试图通过我的场景获得的面向对象的想法是什么?

c++ - 使用内部链接定义的全局外部常量变量的类

c++ - 是否允许删除修改其参数?