vector<int> vwInts;
vector<int> vwIntsB;
for(int i=0; i<10; i++)
vwInts.push_back(i);
transform(vwInts.begin(), vwInts.end(), inserter(vwIntsB, vwIntsB.begin()),
bind1st(plus<int>(), 5)); // method one
transform(vwInts.begin(), vwInts.end(), inserter(vwIntsB, vwIntsB.begin()),
bind2nd(plus<int>(), 5)); // method two
Tôi biết sự khác biệt về cách sử dụng giữa bind1st và bind2nd và cả phương pháp một và phương thức hai đều cung cấp kết quả mong đợi cho tôi.Sử dụng bind1st hoặc bind2nd?
Có đúng là không có sự khác biệt lớn trong trường hợp này (tức là sử dụng biến đổi) để tôi có thể sử dụng hoặc bind1st hoặc bind2nd?
Vì, tất cả các ví dụ tôi đã thấy cho đến nay luôn sử dụng phương pháp hai. Tôi muốn biết có hay không bind1st và bind2nd trong trường hợp trên là như nhau.
tôi sẽ khuyên bạn nên nhìn vào boost :: ràng buộc nếu bạn chưa có. Nó linh hoạt hơn và mạnh mẽ hơn bind1st và bind2nd. –