列出模数错误
List modulus error
本文关键字:错误 更新时间:2023-10-16
p是一个整数列表。
std::list<int> p;
if ( 2 % p(0) == 0 );
但p有"表达式必须具有整型或非范围枚举类型"错误。
为什么?
list
不会重载operator(int)
,这是您能够说出p(0)
的要求。
如果你的意思是p[0]
,list
也不会过载operator[int]
,这只适用于vector
,map
(或实际上是operator[keyType]
)等。这是因为list
没有随机访问(意味着你不能获得任何元素,除非你循环通过)
然而,你可以做一些类似的事情:
if (2 % p.front() == 0)
或
if (2 % *p.begin() == 0)
其访问第一元件。
相关文章:
- 警告处理为错误这里有什么问题
- "error: no matching function for call to"构造函数错误
- boost::进程间消息队列引发错误
- C++,OpenCV,尝试显示图像时"OpenCV(4.3.0) Error: Assertion failed (size.width>0 && size.height>0)"此错误
- 有关插入适配器的错误。[错误]请求从 'back_insert_iterator<vector<>>' 类型转换为非标量类型
- QT在错误的班级中寻找空位
- vector.resize()中的分配错误
- 代码在main()中运行,但在函数中出现错误
- 释放错误后堆使用
- (C++)分析树以计算返回错误值的简单算术表达式
- Project Euler问题4的错误解决方案
- 我的字符计数代码计算错误.为什么
- 从"int*"强制转换为"unsigned int"会丢失精度错误
- 尝试导入pybind-opencv模块时出现libgtk错误
- CMake项目Boost库错误:Boost/config/compiler/gcc.hpp:165:10:致命错误:cs
- 在某些循环内使用vector.push_back时出现分段错误
- MSVC多行宏编译器错误
- 静态数据成员的问题-修复链接错误会导致编译器错误
- 为什么在运行时没有向我们提供有关分段错误的更多信息?
- 错误:未在此范围内声明'reverse'