我有一个具有读取功能的 C++ File 类,它应该将文件的全部内容(就像 Python 所做的那样)读入缓冲区。但是,当我尝试从 unistd.h 调用读取函数时,我得到:
file.cpp:21: error: no matching function for call to ‘File::read(int&, char*&, int)’
file.cpp:17: note: candidates are: char* File::read()
我做错了什么?它们具有完全不同的签名,为什么我不能简单地调用它?
最佳答案
您是否尝试过明确范围;
char* File::read()
{
// Double-colon to get to global scope
::read(...);
// ..
}
?
关于c++ - 标准 POSIX 读取被具有不同签名的读取方法遮蔽,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1148315/