以下这段代码是在头文件里面的,DmaOpen DmaClose函数也是直接在class pcie_chip{}里面的。加了个额外的pcie_chip::才会报错。
//delete pcie_chip:: this scope identifier to solve g++ error:http://stackoverflow.com/questions/5642367/extra-qualification-error-in-c
//this usage does not accord to C++ standard , and fuck the MSVC surpport this feature
void /*pcie_chip::*/DmaOpen( bool fPolling ,
unsigned long dwOptions ,
unsigned char *pdata ,
int64 size ) ;
void /*pcie_chip::*/DmaClose( ) ;
就是上述那样,需要把pcie_chip::注释掉。 MSVC支持的C++太特么不标准了,所以很多程序员养成了恶习。
reference:
http://stackoverflow.com/questions/5642367/extra-qualification-error-in-c