我正在研究一套带有一组集的c ++程序。这是声明的一组集。
std::set< std::set<int> > temp_moves;
我在本声明中收到以下错误,我的问题是我的语法是否正确?是否可以在程序中创建一组集?
error: no matching function for call to ‘std::set<std::set<int> >::insert(int&)’
更新代码
std::set<int> next_moves;
std::set<int> available_numbers;
for (const auto available_number : available_numbers)
temp_moves.insert(number);
temp_moves.insert(available_number);
next_moves.insert(temp_moves);
答案 0 :(得分:1)
您正在向需要集合的数据结构available_number
中插入一个整数值temp_moves
...
可能不是你想要实现的逻辑,但以下至少会编译。希望它有所帮助:
std::set<int> next_moves;
std::set<int> available_numbers;
for (const auto available_number : available_numbers) {
next_moves.insert(available_number);
}
temp_moves.insert(next_moves);