คำถามติดแท็ก operator-keyword

5
ตัวดำเนินการที่อยู่คู่ C ++? (&&)
ฉันกำลังอ่านซอร์สโค้ด STL และฉันไม่รู้ว่า&&ตัวดำเนินการที่อยู่ควรจะทำอะไร นี่คือตัวอย่างโค้ดจากstl_vector.h: vector& operator=(vector&& __x) // <-- Note double ampersands here { // NB: DR 675. this->clear(); this->swap(__x); return *this; } "Address of Address" มีความหมายหรือไม่? เหตุใดจึงมีตัวดำเนินการที่อยู่สองตัวแทนที่จะเป็นเพียงตัวดำเนินการเดียว

8
วิธีใช้ตัวดำเนินการเปรียบเทียบเช่น>, =, <บน BigDecimal
ฉันมีคลาสโดเมนที่ตั้งค่าหน่วยราคาเป็นประเภทข้อมูล BigDecimal ตอนนี้ฉันกำลังพยายามสร้างวิธีเปรียบเทียบราคา แต่ดูเหมือนว่าฉันไม่มีตัวดำเนินการเปรียบเทียบในประเภทข้อมูล BigDecimal ฉันต้องเปลี่ยนประเภทข้อมูลหรือมีวิธีอื่นไหม


6
ตัวดำเนินการตัวแปรเป็นไปได้หรือไม่?
มีวิธีทำสิ่งที่คล้ายกับวิธีใดวิธีหนึ่งต่อไปนี้: var1 = 10; var2 = 20; var operator = "&lt;"; console.log(var1 operator var2); // returns true -- หรือ -- var1 = 10; var2 = 20; var operator = "+"; total = var1 operator var2; // total === 30

4
การเชื่อมสตริงไม่ทำงานตามที่คาดไว้ [ปิด]
มันยากที่จะบอกว่ากำลังถามอะไรที่นี่ คำถามนี้คลุมเครือคลุมเครือไม่สมบูรณ์กว้างเกินไปหรือมีวาทศิลป์และไม่สามารถตอบได้อย่างสมเหตุสมผลในรูปแบบปัจจุบัน สำหรับความช่วยเหลือในการทำความเข้าใจคำถามนี้เพื่อที่จะสามารถเปิด, ไปที่ศูนย์ช่วยเหลือ ปิดให้บริการใน8 ปีที่ผ่านมา ฉันรู้ว่ามันเป็นปัญหาทั่วไป แต่กำลังมองหาข้อมูลอ้างอิงและข้อมูลอื่น ๆ ฉันไม่พบคำตอบที่ชัดเจนสำหรับคำถามนี้ พิจารณารหัสต่อไปนี้: #include &lt;string&gt; // ... // in a method std::string a = "Hello "; std::string b = "World"; std::string c = a + b; คอมไพเลอร์บอกฉันว่าไม่พบตัวดำเนินการที่โอเวอร์โหลดสำหรับchar[dim]. หมายความว่าในสตริงไม่มีตัวดำเนินการ + หรือไม่? แต่ในหลายตัวอย่างมีสถานการณ์เช่นนี้ หากนี่ไม่ใช่วิธีที่ถูกต้องในการต่อสตริงเพิ่มเติมวิธีที่ดีที่สุดคืออะไร?

1
ผู้ดำเนินการแคสต์สามารถเปิดเผยได้หรือไม่?
เมื่อพูดถึงคอนสตรัคเตอร์การเพิ่มคีย์เวิร์ดexplicitจะป้องกันไม่ให้คอมไพเลอร์ที่กระตือรือร้นสร้างอ็อบเจกต์เมื่อมันไม่ใช่ความตั้งใจแรกของโปรแกรมเมอร์ กลไกดังกล่าวมีให้สำหรับผู้ประกอบการหล่อด้วยหรือไม่? struct Foo { operator std::string() const; }; ตัวอย่างเช่นที่นี่ฉันอยากจะร่ายFooเป็น a std::stringได้ แต่ฉันไม่ต้องการให้นักแสดงดังกล่าวเกิดขึ้นโดยปริยาย

1
นอกจาก as-pattern @ ยังมีความหมายอะไรใน Haskell
ฉันกำลังศึกษา Haskell อยู่ในขณะนี้และพยายามทำความเข้าใจโครงการที่ใช้ Haskell เพื่อใช้อัลกอริทึมการเข้ารหัสลับ หลังจากอ่านLearn You a Haskell for Great Goodออนไลน์ฉันเริ่มเข้าใจโค้ดในโครงงานนั้น จากนั้นฉันก็พบว่าฉันติดอยู่ที่รหัสต่อไปนี้ด้วยสัญลักษณ์ "@": -- | Generate an @n@-dimensional secret key over @rq@. genKey :: forall rq rnd n . (MonadRandom rnd, Random rq, Reflects n Int) =&gt; rnd (PRFKey n rq) genKey = fmap Key $ randomMtx 1 $ …
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.