其他分享
首页 > 其他分享> > c – 在cpp中返回一对时出错

c – 在cpp中返回一对时出错

作者:互联网

我有以下代码:

 return new std::pair<BST<Data>::iterator(cursor), true>;

这会导致以下错误:

could not convert ‘(operator new(4u), (, ((int*))))’ from ‘int*’ to ‘std::pair, bool>’
type/value mismatch at argument 1 in template parameter list for ‘template struct std::pair’

这可能是什么问题?

解决方法:

除了新的(不要使用new除非你必须)并返回,为了构造一对,使用提到的make_pair()函数或调用这样的构造函数:pair< T1,T2>(v1,v2 ).您正在将类型(对< T1,T2>)与init的类型实例(v1,v2)的值混合在一起.

标签:c,compiler-errors,binary-tree
来源: https://codeday.me/bug/20190901/1782366.html