将赋值运算符与make_pair方法一起使用会生成 CLion 警告
Using an assignment operator with make_pair method generates a CLion warning
在我的程序中,有一个对数组,声明如下:
pair <string, int> mostOftenPairs[10];
例如,当我想初始化它时:
for (short i = 0; i < 10; ++i)
mostOftenPairs[i] = make_pair(std::string(), 0);
CLion 在发生赋值的行下划线,当我将鼠标悬停在它上面时,我收到此错误:
'pair::operator=(type)' is deleted
但是,该程序运行没有任何问题,但我的问题是是否有任何方法用于将值分配给对而不是"="?是否可以在同一行中初始化对数组?我的意思是类似于这个:
pair <string, int> mostOftenPairs[10] = make_pair(std::string(), 0);
是否可以在同一行中初始化对数组?我的意思是类似于这个:
要默认初始化它们,您无需执行任何操作,如构造函数的文档中所述std::pair
1( 默认构造函数。值初始化对的两个元素,第一个和第二个。
(强调是我的(所以std::pair
的默认构造函数已经初始化(空字符串和 0 表示 int(,如果你不需要默认值,请使用std::vector
:
std::vector<std::pair<std::string,int>> mostOftenPairs( 10, std::make_pair( std::string(), 1 ) );
相关文章:
- 警告处理为错误这里有什么问题
- 无法在 CLion 中构建 C++ 项目
- 使用动态分配的数组会导致代码分析发出虚假的C6386缓冲区溢出警告
- cppcheck在const std::string[]上引发警告
- C++:如何在CLion IDE中安装Boost
- GCC对可能有效的代码抛出init list生存期警告
- 如何在BST的这个简单递归实现中消除警告
- 关于std::move的使用,是否有编译警告
- g++ 在某个类成员未初始化时不发出警告
- 如何处理来自核心指南检查器的关于gsl::at的静态分析警告
- 如何使用CLion在Mac上创建一个新的.txt文件
- 使用typeid警告未使用的变量
- 示例C++项目编译中的警告
- 警告:在函数返回类型 [-Wignore 限定符] 时忽略类型限定符
- 如何修复编译器警告 C6386 和 C6385?
- 返回语句后的代码,没有警告
- 将赋值运算符与make_pair方法一起使用会生成 CLion 警告
- 为什么 CLion 给我一个警告?
- 将默认的cmakelists.txt在clion中更改为包括警告
- 如何在CLion中启用所有编译器警告