आरएसपीईसी में, should == ...
और should eql(...)
का उपयोग करने के बीच क्या अंतर है? मैंने देखा कि आरएसपीईसी दस्तावेज हमेशा eql
का उपयोग करता है, लेकिन ==
कम टाइपिंग और पढ़ने में आसान है। मैं क्या खो रहा हूँ?आरएसपीसी: "चाहिए == ..." और "चाहिए eql (...)"
10
A
उत्तर
16
यह बल्कि सरल, वास्तव में है: should ==
==
संदेश परीक्षण विषय के लिए भेजता है should eql
परीक्षण विषय के लिए eql?
संदेश भेजता है। दूसरे शब्दों में: दो अलग-अलग परीक्षण दो पूरी तरह से अलग संदेश भेजते हैं जो दो पूरी तरह से अलग तरीकों का आह्वान करते हैं और इस प्रकार दो पूरी तरह से अलग-अलग चीजें करते हैं। विशेष रूप से, eql?
==
से कठोर है लेकिन equals?
से कम सख्त है।
15
वे आम तौर पर बराबर हैं, लेकिन हमेशा नहीं:
1 == 1.0 # => true
1.eql? 1.0 # => false
+0
touche ... touche। .. –
संबंधित मुद्दे
- 1. आरएसपीसी
- 2. रूबी मेटाप्रोग्रामिंग, आरएसपीसी के 'चाहिए' कैसे काम करता है?
- 3. रूबी और आरएसपीसी
- 4. ओओ क्या होना चाहिए और क्या नहीं होना चाहिए?
- 5. आरएसपीसी
- 6. आरएसपीसी
- 7. क्या हमें हमेशा अपवाद पकड़ना चाहिए, इसे लपेटना चाहिए और इसे पास करना चाहिए?
- 8. क्या मुझे अपना SQL डेटाबेस लगातार खोलना चाहिए() और बंद करना चाहिए या इसे खोलना चाहिए?
- 9. आरएसपीसी बनाम ककड़ी (आरएसपीसी कहानियां)
- 10. डेविस और आरएसपीसी
- 11. आरएसपीसी और डिवाइज: व्यवस्थापक
- 12. आरएसपीसी और रेल-एपीआई
- 13. आरएसपीसी और वीसीआर
- 14. आरएसपीसी
- 15. आरएसपीसी
- 16. आरएसपीसी
- 17. आरएसपीसी
- 18. आरएसपीसी
- 19. आरएसपीसी
- 20. आरएसपीसी
- 21. आरएसपीसी
- 22. आरएसपीसी
- 23. आरएसपीसी
- 24. आरएसपीसी
- 25. मुझे रेल के साथ आरएसपीसी या कंधे का उपयोग क्यों करना चाहिए?
- 26. मुझे डेटाफ्रेम में अधिकतम 2 कॉलम कैसे लेना चाहिए और इसे एक और कॉलम बनाना चाहिए?
- 27. आरएसपीसी रूबी
- 28. आरएसपीसी
- 29. आरएसपीसी
- 30. आरएसपीसी
http://batsov.com/articles/2011/11/28/ruby-tip-number-1-demystifying-the-difference-between-equals-equals-and-eql/ – Kris