開發平台(Platform): (Ex: Win10, Linux, ...)
Linux
編譯器(Ex: GCC, clang, VC++...)+目標環境(跟開發平台不同的話需列出)
GCC
問題(Question):
#include <iostream>
int main()
{
int a;
int *ptr = &a;
int b[10] = {0};
int &d = a;
decltype(*ptr) c1 = a;//int &
decltype(b[0]) c2 = a;//int &
decltype(ptr) c3 = &a; //int *
}
最近再看decltype,書上說c1,c2都是"int &"
雖然這是結果,可是其實我還是不是很懂,為何c1,c2不是"int"
有人能更好的解釋為何c1,c2不應該是int??
還是就是規定沒什麼好說?
感謝各位