example 1 (implicit conversion)
Qt Code:
  1. class MyObj
  2. {
  3. public:
  4. MyObj(int size): m_size(size) {}
  5. private:
  6. int m_size;
  7. };
  8.  
  9. ....
  10. void A::someMethod()
  11. {
  12. MyObj mw(10);
  13. mw = 5;// wrong; trying convert 5 to MyObj (implicit conversion)
  14. }
To copy to clipboard, switch view to plain text mode 
example 2 (using explicit keyword)
Qt Code:
  1. class MyObj
  2. {
  3. public:
  4. explicit MyObj(int size): m_size(size) {}
  5. private:
  6. int m_size;
  7. };
  8.  
  9. ....
  10. void A::someMethod()
  11. {
  12. MyObj mw(10);
  13. mw = 5;//compile error; explicit conversion is needed.
  14. mw = MyObj(5);//ok
  15. }
To copy to clipboard, switch view to plain text mode