คำถามติดแท็ก std-pair

30
อะไรคือสิ่งที่เทียบเท่าของ C ++ Pair <L, R> ใน Java?
มีเหตุผลที่ดีที่ไม่มีPair&lt;L,R&gt;ใน Java หรือไม่ อะไรจะเทียบเท่ากับโครงสร้าง C ++ นี้ ฉันควรหลีกเลี่ยงการนำของฉันไปใช้ใหม่ ดูเหมือนว่า1.6กำลังให้อะไรที่คล้ายกัน ( AbstractMap.SimpleEntry&lt;K,V&gt;) แต่มันดูค่อนข้างซับซ้อน
671 java  tuples  std-pair 



9
วิธีที่ต้องการ / สำนวนในการแทรกลงในแผนที่คืออะไร?
ฉันได้ระบุสี่วิธีในการแทรกองค์ประกอบลงใน a std::map: std::map&lt;int, int&gt; function; function[0] = 42; function.insert(std::map&lt;int, int&gt;::value_type(0, 42)); function.insert(std::pair&lt;int, int&gt;(0, 42)); function.insert(std::make_pair(0, 42)); วิธีใดที่เป็นที่ต้องการ / สำนวน? (และมีวิธีอื่นที่ฉันคิดไม่ถึง?)
115 c++  stl  insert  stdmap  std-pair 

5
ความแตกต่างระหว่าง std :: pair และ std :: tuple ที่มีสมาชิกเพียงสองคน?
มีความแตกต่างระหว่าง an std::pairและ an ที่std::tupleมีสมาชิกเพียงสองคนหรือไม่? (นอกจากชัดเจนว่าstd::pairต้องการสมาชิกสองคนและเพียงสองคนและtupleอาจมีมากกว่าหรือน้อยกว่า ... )

2
วิธีการเริ่มต้น C ++ 17 เวกเตอร์ของคู่ด้วยองค์ประกอบเสริม
ใน C ++ 17 คุณจะประกาศและกำหนดค่าเริ่มต้นเวกเตอร์ของคู่ (หรือ tuples) ด้วยองค์ประกอบเสริมได้อย่างไร std::vector&lt;std::pair&lt;int, optional&lt;bool&gt; &gt; &gt; vec1 = { {1, true}, {2, false}, {3, nullptr}}; ฉันมีคู่ที่องค์ประกอบที่สองอาจเป็นโมฆะ / ไม่จำเป็น

2
รายการ Initializer ภายใน std :: pair
รหัสนี้: #include &lt;iostream&gt; #include &lt;string&gt; std::pair&lt;std::initializer_list&lt;std::string&gt;, int&gt; groups{ { "A", "B" }, 0 }; int main() { for (const auto&amp; i : groups.first) { std::cout &lt;&lt; i &lt;&lt; '\n'; } return 0; } คอมไพล์ แต่ส่งคืน segfault ทำไม? ทดสอบกับ gcc 8.3.0 และคอมไพเลอร์ออนไลน์
26 c++  std  std-pair 

1
std :: pair <auto, auto> return type
ผมเล่นรอบกับในauto std::pairในรหัสด้านล่างฟังก์ชั่นfควรจะส่งกลับstd::pairประเภทซึ่งขึ้นอยู่กับพารามิเตอร์แม่แบบ ตัวอย่างการทำงาน: ตัวอย่าง 1 template &lt;unsigned S&gt; auto f() { if constexpr (S == 1) return std::pair{1, 2}; // pair of ints else if constexpr (S == 2) return std::pair{1.0, 2.0}; // pair of doubles else return std::pair{0.0f, 0.0f}; // pair of floats } ใช้งานได้กับ gcc 9.2, gcc 10.0, …
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.