如何为映射的交互器分配起始地址<对<长整,长整>,长整整>
How to assign starting address to an interator of a map<pair<long long int,long long int>,long long int >
我创建了一对和long-long-int-的映射
map< pair< long long int, long long int >,long long int >;
和一个interator-
map< pair< long long int, long long int >, long long int >::iterator it1;
当我执行it1=same.begin()
时,编译器抛出了一个错误,为什么会这样?
生成错误:
no viable overloaded '='
it1=same12.begin();
~~~^~~~~~~~~~~~~~~
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchains/usr/bin/../include/c++/v1/map:648:29:注:候选函数(隐式复制赋值运算符(不可行:没有已知的从'__map_iterator<__tree_iterator<__value_type,[…]>,__node_pointer,[…]]>'to'常量__map_iterator<__tree_iterator<__value_type,[…]>,std::__1::__tree_node,long-long>,void*>*,[…]>'用于第一个参数class _LIBCPP_TYPE_VIS_ONLY __map_iterator
错误告诉您:
没有已知的从
'__map_iterator<...>'
到'const __map_iterator<_...>'
的转换
注意const
。
这里,看起来same12
是const map
(或者const map&
,或者它可能在const
方法中使用,在这种情况下应用常量正确性(。这意味着.begin()
将返回const_iterator
,而不是iterator
。
您需要将it1
的类型更改为const_iterator
,而不是iterator
。完整类型应为:map<pair<long long int, long long int>, long long int>::const_iterator
。
或者只使用auto it1 = same12.begin();
。
- C 字符串返回字符串的整数/双精度/长整型值
- 无法在 Arduino 中uint8_t数组转换为无符号长整型数组
- JNI 日期值转换问题,在C++中获取不同的长整型值
- 将长整型值打印为带有前导零的十六进制
- 为什么在传递长整型时调用具有两个双精度类型的参数的重载函数?
- 提升不良词法强制转换:将字符串转换为无符号长整型时,无法将源类型值解释为目标
- 将最小值整数转换为无符号长整型
- 如何将小端格式的QByteArray转换为无符号长整型
- 无符号长整型和无符号 int 之间有什么区别,这 2 种类型应该如何在 c# 中封送?
- C++中"长整"的确切最大值是多少?
- 环礁和(长整型)的区别?
- 如何在长整中使用加法?
- 将逗号格式化为长整型整数
- 如何将长整型传递给 itoa 函数?
- 是否存在将长整型转换为指针有效的情况
- 在 C++ 中创建一对长整型和矢量时出现编译错误
- 当我使用长整型时,我的代码不起作用,它与 int 一起工作得很好
- 将字符串中以十六进制形式存储的负长整型值转换为 C++ 中的长整型变量
- 为什么当我们把变量"u"的数据类型从长整型更改为整型时,模幂会出错?
- 错误:请求从 std::chrono::time_point 浮点数转换为非标量类型长整型