1樓:匿名使用者
int i=10;
cout<
using namespace std;
class fraction //數類;
fraction& operator++() //字首自加重載;(前置版本prefix)
const fraction operator ++(int) //字尾自加重載;(後置版本postfix)
};ostream& operator<<(ostream& out, const fraction& x)
int main()
前置版本返回乙個引用【fraction& operator++()】,後置版本返回乙個const值【const fraction operator ++(int)】。
後置版本是利用前置版本來實現的。節約**,控制**有餘。
前置版本的效率高,因為後置版本需要呼叫前置版本,所有後置版本效率比前置要低。(++i比i++效率高。)
在後置版本裡,人為新增乙個引數(int),主要是為了區別前置版本,這個引數不會被使用。
2樓:匿名使用者
舉個簡單的例子:
i=2;
m1=i++;(這裡是先把i的值2賦給m1;然後i+1。答案就是m1=2,i=3)
若是m1=++i;(先i+1,然後把加一後的值賦值給m1。答案就是m1=3,i=3)
字首運算子和字尾運算子的區別
3樓:匿名使用者
你好,每一步每一步的解釋,其實沒必要,我主要跟你說說 --inum 和 inum-- 的區別吧。
首先,我們說將二者獨立為乙個語句來執行的時候,其實從結果看沒有任何區別,都是變數自身加一:
--inum;
inum--;
// 從結果看,以上兩句等價於
inum -= 1;
// 也等價於
inum = inum - 1;
但是,當兩者與其他語句同時使用時,區別就明顯了。簡單的說就是:
--inum:是先自身減一,再把結果拿去用inum--:是先拿自身去用,再自身減一
var inum = 10;
alert(--inum); // 9,先減了1,再使用結果9alert(inum--); // 9,先使用inum:9,然後再自減1,得到下一行alert出的8
alert(inum); // 8
到這裡,基本就可以說清楚二者的區別了。
希望能幫你解決疑惑,望採納~
4樓:左岸流霜
字首運算子是在使用變數前先進行運算,字尾是使用後再進行運算。
比如:var a=10;
alert(a++);//輸出10,然後a=a+1alert(++a);//a=a+1,然後輸出a
「字首運算子」和「字尾運算子」的區別是什麼?
5樓:秀黯然
1.字首bai運算子是在使用變數前先進行運算du,後zhi綴是使用後再進行運算。
dao比如:var a=10;
alert(a++);//輸出專10,然屬後a=a+1
alert(++a);//a=a+1,然後輸出a
先把i的初值賦給表示式(i++),作為表示式(i++)的值,然後i自增1作為i的值。
2.因為你的後置++返回的並不是最初被自增的物件本身。所以(n++)++這個表示式的第二個++實際上自增的是乙個臨時物件,而原本的n自然沒有再次發生變化。
所以為了防止這種困惑必須安利c++11:
sometype sometype::operator ++(int) &。
c++,字首遞增,和字尾遞增運算子都怎麼過載?
6樓:捐你妹
#include <iostream.h>class counter
counter operator ++();
counter operator ++(int );
void print()
private:
unsigned v;
};counter counter::operator ++()counter counter::operator ++(int)void main()
C 過載 運算子的問題,c 運算子過載問題
只拿了你有疑問的兩個函式出來討論,看是否明白 time time operator 這是字首 return this time time operator int 這是字尾 return temp time operator 這表示前 即 time1 呼叫該函式 time operator int ...
C 運算子過載
問題出在 void operator string ob1 這一句,可以改成 void operator string ob1 原因在於 引數 string ob1 相當於是個臨時變數,他的值是,ob2的拷貝,但是它的生命週期在 以後就到頭了,也就是說就析構了。看你的string類裡有個 char ...
c 過載運算子的作用是什麼,C 中 運算子過載 到底有什麼何意義?
就是可以定義新的運算方法,比如虛數的 法,你定義2個虛數,直接用 是不行的,系統不認,你必須自己寫個過載,讓實部和實部相加,虛部和虛部相加,你先了解下什麼叫函式過載就能更好理解了。過載就是說你對系統給的不滿意,無法滿足你自己的需求,然後你寫個能滿足自己的需求代替系統的,當然只在這個類裡有效。就是用函...