这里只是一个非常快速的问题。我正在使用虚拟函数从文本文件中读取。现在,它是虚拟的,因为一方面我希望将值标准化,另一方面我不希望它们标准化。我试图这样做:
bool readwav(string theFile, 'native');
所以理论上,如果使用'native',则应该调用此方法,但是,如果调用'double',则调用该方法的不同版本。如果值为空,则相同,它应该只执行本机选项。
第一个问题,为什么上面的声明不起作用?另外,这是最好的下山路线吗?或者,最好只有一个在选项之间切换的类方法。
谢谢 :)
更新:
我哪里错了?
bool Wav::readwav(string theFile, ReadType type = NATIVE)
{
// Attempt to open the .wav file
ifstream file (theFile.c_str());
if(!this->readHeader(file))
{
cerr << "Cannot read header file";
return 0;
}
for(unsigned i=0; (i < this->dataSize); i++)
{
float c = (unsigned)(unsigned char)data[i];
this->rawData.push_back(c);
}
return true;
}
bool Wav::readwav(string theFile, ReadType type = DOUBLE)
{
// Attempt to open the .wav file
ifstream file (theFile.c_str());
cout << "This is the double information";
return true;
}