1
Я новичок в C++ std :: set user.Как изменить std :: set element по вызову функции (вызов по ссылке)? in C++
Заданный вопрос: Я инициализирую набор в основной функции, и хочу вставить элемент , вызвав некоторую функцию. Но, похоже, это не работает.
Это о вызове по ссылке или что-то еще? Благодаря!
#include <iostream>
#include <set>
using namespace std;
void f(set<int> myset){
set<int>::iterator it;
// insert element
for(int i=1;i<11;i++){
myset.insert(i*10);
}
}
int main()
{
set<int> myset;
set<int>::iterator it;
f(myset);
//output element
for(it=myset.begin();it!=myset.end();it++){
cout<<*it<<" ";
}
return 0;
}
Для OP: Как правило, когда вы хотите, вызываемая чтобы изменить какое-либо значение из вызывающей функции, вам нужно передать ссылку (или указатель). Передача по значению означает «копирование», –