大家好,又見面了,我是你們的朋友全棧君。
1 decltype關鍵字
decltype是C++11中引入的新的類型說明符。編譯器根據分析表達式或者函數傳回值來分析其類型。decltype的詳細用法,請參考《C++中decltype的使用方法》
2 decltype與左值和右值
decltype後面跟的表達式是左值或者右值時,編譯器分析的類型會有所不同。如果表達式(非單個變量)的求值結果是左值,則編譯器會得到一個引用類型;如果表達式(非單個變量)的求值結果是右值,則編譯器會得到一個與表達式相同的類型。
int arr[2] = { 10,20 };
decltype (arr[1])k = i;
decltype (&arr[1])j = &i;
複制
其中,arr是一個擁有2個元素的int數組,arr[1]的類型是int,該表達式是一個左值,是以k的類型是一個引用類型,即int&;&arr[1]的類型是int*,該表達式是一個右值,是以j的類型是int*。
釋出者:全棧程式員棧長,轉載請注明出處:https://javaforall.cn/126707.html原文連結:https://javaforall.cn