相关疑难解决方法(0)

类模板构造函数可以在c ++ 20中具有冗余的模板参数列表吗

据我所知,以下代码

template<typename T>
struct S {
    S<T>();
};
Run Code Online (Sandbox Code Playgroud)

是格式良好的,即使<T>在构造函数的声明中是多余的。

但是,在 gcc 主干上(但不是在 gcc10.2 上),-std=c++20这会出现错误:

error: expected unqualified-id before ')' token
    3 |     S<T>();
                 ^
Run Code Online (Sandbox Code Playgroud)

代码编译的铿锵树干-std=c++20。这是一个错误,还是 C++20 中尚未在所有编译器中实现的重大更改?

c++ templates constructor language-lawyer c++20

4
推荐指数
1
解决办法
180
查看次数

标签 统计

c++ ×1

c++20 ×1

constructor ×1

language-lawyer ×1

templates ×1