阅读:运算符重载及其规则
在这里,我们正在C ++编程中实现/定义一元预递增运算符重载,以对其进行定义:使用运算符键盘作为函数名称,然后编写运算符。
语法:
return_type operator++(function_argument) { //身体 }
看程序:
using namespace std; #include <iostream> class Sample { //私有数据成员 private: int count; public: //默认构造函数 Sample() { count = 0;} //参数化的构造函数 Sample(int c) { count = c;} //运算符重载 void operator++() { ++count;} //打印值 void printValue() { cout<<"Value of count : "<<count<<endl; } }; //主程序 int main(){ int i = 0; //对象创建 Sample S1(10); for(i=0; i< 10; i++) { //递增对象 ++S1; //S1++; //错误 S1.printValue(); } return 0; }
输出结果
Value of count : 11 Value of count : 12 Value of count : 13 Value of count : 14 Value of count : 15 Value of count : 16 Value of count : 17 Value of count : 18 Value of count : 19 Value of count : 20
在此程序中,我们创建了一个名为Sample的类。它包含一个数据成员值。并且我们实现了一个使预增量运算符过载的功能。
我们不能通过这种运算符重载方法使用后增量。
++ S1是正在调用预递增的重载运算符的语句,该语句将增加私有数据成员的值(value)。
我们也可以使用以下语句代替++ S1:S1.operator ++();