小编yi *_*uce的帖子

使用概念用不同的概念定义同一个类

我想创建模板类来获取具有相同类的引用类型和非引用类型模板类,如下所示

\n
    template <typename T> requires (std::is_reference_v<T>)\n    struct RRR\n    {\n        T m_value{};\n        RRR(T init) : m_value{ init }\n        {}\n    };\n\n    template <typename T> requires (!std::is_reference_v<T>)\n    struct RRR\n    {\n        T m_value{};\n        RRR(T init) : m_value{ init }\n        {}\n    };\n
Run Code Online (Sandbox Code Playgroud)\n

但是当我使用它时,我遇到了下面的编译错误。

\n

错误:重新声明 \xe2\x80\x98template 需要具有不同约束的 is_reference_v struct RRR\xe2\x80\x99

\n

像这种情况定义模板的解决方案是什么?

\n

c++ templates concept

2
推荐指数
1
解决办法
131
查看次数

标签 统计

c++ ×1

concept ×1

templates ×1