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