Facebook
From Harmless Mockingjay, 2 Years ago, written in C++.
This paste is a reply to クラスの型変換とは? from Gamboge Stork - view diff
Embed
Download Paste or View Raw
Hits: 169
  1. #include <iostream>
  2.  
  3. using namespace std;
  4.  
  5. class Number {
  6. private:
  7.         int num;
  8. private:
  9.         Number() { num = 0; }
  10.         Number(int n) { num = n; } //
  11.         operator int() { return num; }
  12.         Number operator++();
  13.         Number operator++(int d);
  14.         Number operator--();
  15.         Number operator--(int d);
  16. };
  17.  
  18. Number Number::operator++()
  19. {
  20.         num++;
  21.         return *this;
  22. }
  23.  
  24. Number Number::operator++(int d) {
  25.         Number n = *this;
  26.         num++;
  27.         return n;
  28. }
  29.  
  30. Number Number::operator --() {
  31.         num--;
  32.         return *this;
  33. }
  34.  
  35. Number Number::operator --(int d) {
  36.         Number n = *this;
  37.         num--;
  38.         return n;
  39. }
  40.  
  41. int main() {
  42.         Number n;
  43.         int i = (int)n;
  44.         cout << i << endl;
  45. }