คำถามติดแท็ก stdset


10
เหตุใด std :: set จึงไม่มีฟังก์ชันสมาชิก“ ประกอบด้วย”
ฉันใช้งานหนักstd::set<int>และบ่อยครั้งฉันต้องตรวจสอบว่าชุดดังกล่าวมีตัวเลขหรือไม่ ฉันคิดว่ามันเป็นธรรมชาติที่จะเขียน: if (myset.contains(number)) ... แต่เนื่องจากไม่มีcontainsสมาชิกฉันจึงต้องเขียนสิ่งที่ยุ่งยาก: if (myset.find(number) != myset.end()) .. หรือไม่ชัดเจนเท่า: if (myset.count(element) > 0) .. มีเหตุผลในการตัดสินใจออกแบบนี้หรือไม่?
103 c++  stl  stdset 

5
จะหาจุดตัดของสอง std :: set ใน C ++ ได้อย่างไร?
ฉันพยายามหาจุดตัดระหว่างสอง std :: set ใน C ++ แต่ฉันได้รับข้อผิดพลาดเรื่อย ๆ ฉันสร้างการทดสอบตัวอย่างเล็กน้อยสำหรับสิ่งนี้ #include <iostream> #include <vector> #include <algorithm> #include <set> using namespace std; int main() { set<int> s1; set<int> s2; s1.insert(1); s1.insert(2); s1.insert(3); s1.insert(4); s2.insert(1); s2.insert(6); s2.insert(3); s2.insert(0); set_intersection(s1.begin(),s1.end(),s2.begin(),s2.end()); return 0; } โปรแกรมหลังไม่สร้างเอาต์พุตใด ๆ แต่ฉันคาดว่าจะมีชุดใหม่ (ขอเรียกว่าs3) โดยมีค่าต่อไปนี้: s3 = [ 1 , …

2
std :: set object เก็บในหน่วยความจำอย่างต่อเนื่องหรือไม่?
ไม่std::setวัตถุที่เก็บไว้ในหน่วยความจำที่ต่อเนื่องกันเช่นstd::vector? ฉันไม่สามารถค้นหาสิ่งนี้บนเว็บได้ cppreference ไม่ได้กล่าวถึงรายละเอียดเกี่ยวกับการจัดสรรหน่วยความจำ แต่ฉันไม่เห็นว่าทำไมมันไม่สามารถใช้หน่วยความจำต่อเนื่องดังนั้นคำถามของฉัน
16 c++  set  stdset 
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.