C++:xutility文件中发生错误

来源:互联网 发布:自考还是网络教育 编辑:程序博客网 时间:2024/05/29 17:25

在写程序中途测试时,突然多出一堆语法错误,且来源于xutility文件。
打开xutility文件,其中定义了许多结构体以及函数模板。在其中找错误源是找不到的,因为全是类似于缺少;之类的错误。于是回退之前写的代码,终于发现问题所在:在全局定义了一个distance函数,然后这个distance函数与一个函数模板重名,加之调用的时候传入参数类型不符全局定义函数的类型,进行了模板展开,但是又没有定义该类型的模板函数,于是导致错误。
修正方法:
1 . 换掉函数名,参数类型出错会报错正确位置
2 . 使用作用域,防止参数类型不当引起的歧义

0 0
原创粉丝点击