error: reference to ‘XXX’ is ambiguous

error: reference to ‘DataType’ is ambiguous
 ICudaEngine* createEngine(unsigned int maxBatchSize, IBuilder* builder, IBuilderConfig* config, DataType dt)

这个问题很奇怪,没有明显错误。找了一会儿定位问题在命名空间的问题。
我把开头的

using namespace cv;
using namespace std;

这两行注释掉就解决问题了。

所以总结问题应该是:
tensorrt与std或者cv里面的类型或者函数有一样的名字导致的冲突。然后就是去掉using namespace,后面加作用域,比如std::,cv::Mat等。

posted @ 2021-05-20 10:05  无左无右  阅读(1382)  评论(0编辑  收藏  举报