У меня проблемы с унарным перезагруженным оператором.Унарная перегрузка оператора C++
Вот мой код ...
#include<iostream>
using namespace std;
class Index{
int value;
public:
Index() : value(0) { }
int GetIndex() const
{
return value;
}
void operator ++()
{
value++;
}
};
int main()
{
Index idx1,idx2;
++idx1;
idx2++;
idx2++;
cout << "idx1.value:" << idx1.GetIndex() << endl;
cout << "idx2.value:" << idx2.GetIndex() << endl;
}
Оператор idx2 ++ дает мне компиляции error.The префикс однако т.е. ++ idx1 работает книгу properly.The Я имею в виду, говорит, что оба должны дают тот же результат ... то есть член значения должны получить увеличиваются на 1.
Почему я сталкиваюсь с этой проблемой ?? ... в среде IDE я использую Visual Studio 2015.
[пример здесь] (https://msdn.microsoft.com/en-us/library/f6s9k9ta.aspx) может помочь –