Which increment operator method is called

Question | Jan 14, 2017 | rparekh 

The struct Number has both pre-increment and post-increment operators overloaded:

template <typename N>
struct Number {

  Number(N n):number_(n){}

  Number& operator ++ () {
    return *this;

  Number operator ++ (int) {
    return number_++;

  // conversion operator  
  operator N() { return number_; }

  N number_;

The example code below creates an instance of Number<int> and calls one of the above overloaded increment operators:

Number<int> n(10);
std::cout << ++n;

Select which one of the 2 increment-operator methods is called by std::cout << ++n above.