最近のバージョンのC++では、キーワードautoの使用がより効率的になったと思います。 data type specifierなしauto古いではそう書いてintにデフォルト設定されます: auto value = 5.7; // implicit conversion to int
std::cout << value; // 5
auto val2 = "Hello there!"; /
レンジ・アクセス機能std::beginが(コンテナのために)宣言されています。それは単に template< class C >
decltype(C::begin) begin(C& c);
ない理由 template< class C >
auto begin(C& c) -> decltype(c.begin());
私だけだろうこれら二つの間に違いはありますか?
main関数では、const intポインタの変数を作成し、auto&で宣言された変数に割り当てます。次に、decltype(x)を使用してタイプを確認します。私はそのタイプがconst int*であると予想しました。しかしis_sameはfalseを返します。 int main()
{
int a = 10;
const int * cp_val= &a;
aut