c++ - 访问在 C++ 模板中声明的常量

标签 c++ templates

我有

template <typename A,
          typename B,
          typename C>
class Template
{
public:
    static const size_t ZONE_X = 0;
    static const size_t ZONE_Y = 1;
...
}

从其他模板访问静态 const 变量的最优雅的方法是什么,在我的例子中是依赖注入(inject)或对此模板的策略? ... 或者我应该只在模板中定义常量?

最佳答案

你可以使用

Template<void,void,void>::ZONE_X

请注意,根据其定义,Template 需要三个 void。当然,您可以使用其他类型,例如int 或它们的混合:

Template<int,int,int>::ZONE_X

Template<void,int,float>::ZONE_X

关于c++ - 访问在 C++ 模板中声明的常量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22356962/

相关文章:

c++ - 如何让 MatLab 找到 Visual C++ 编译器?

c++ - 如何共享扩展命名空间之间共享的范围?

c++ - std::ptr_fun 模板化类和结构的参数困难

C++ 模板类型名迭代器

c++ - 函数返回值和右值引用绑定(bind)

c++ - 混合抗锯齿圆圈

c++ - 如何用C++读取CSV文件

c++ - 在 C++11 中,有没有一种方法在调用将任何可调用对象(包括绑定(bind)方法)作为参数的函数时不需要模板参数?

c++: 无法实例化 std::set 模板类

c++ - 单独对象的单一模板实例化