8

関数内でテンプレート化された型エイリアスを宣言できないのはなぜですか?

#include <vector>

int main(){

    //type alias deceleration:
    template <typename T>
    using type = std::vector<T>;

    //type instantiation:
    type<int> t;

}

エラー:テンプレート宣言はブロック スコープで表示できません

これらの宣言をブロック スコープの外に置く必要があるのはなぜですか?

#include <vector>

//type alias deceleration:
template <typename T>
using type = std::vector<T>;

int main(){

    //type instantiation:
    type<int> t;
}
4

1 に答える 1