/** * Esimerkki kääreluokasta (perustyypin käsittely oliona) * ja implisiittisistä tyypinmuunnoksista kuormitettujen * operaattorien ja konstruktorin avulla. * * Miika Nurminen, 8.11.2007 */ #include using namespace std; class Integer { int content; public: /* explicit */Integer(int aContent) : content(aContent) {} operator int() {return content;} }; void tulostaInt(int i) { cout << i; } int main() { Integer i = 3; // sijoitus ja implisiittinen tyypinmuunnos int->Integer // voidaan estää explicit-määreellä konstruktorissa tulostaInt(i); // implisiittinen muutos Integer->int ja kopiointi Integer j(5); // arvon asettaminen tulostaInt(j); return 0; }