私は、ファイルの全内容を(Pythonのように)バッファに読み込むはずのread関数を持つC++ Fileクラスを持っています。しかし、unistd.hからread関数を呼び出そうとすると、次のようになります。標準的なPOSIXは、異なる署名を持つreadメソッドでシャドーされています。
file.cpp:21: error: no matching function for call to ‘File::read(int&, char*&, int)’
file.cpp:17: note: candidates are: char* File::read()
私は間違っていますか?これらは完全に異なる署名を持っています。なぜ私は単にそれを呼び出すことはできませんか?
私たちにコードを表示するのか、それとも一日中推測できるのですか? – rlbond
コードなしでは推測しかできません。 –
実際にが含まれていますか? read(..何でも)の代わりに:: read(.. whatever)を呼び出すことを試みてください。 –
nos