相关疑难解决方法(0)

C++模板typedef

我上课了

template<size_t N, size_t M>
class Matrix {
    // ....
};
Run Code Online (Sandbox Code Playgroud)

我想typedef创建一个Vector(列向量),它相当于一个Matrix大小为N和1的东西.这样的东西:

typedef Matrix<N,1> Vector<N>;
Run Code Online (Sandbox Code Playgroud)

这会产生编译错误.以下内容创建了类似的内容,但并不完全符合我的要求:

template <size_t N>
class Vector: public Matrix<N,1>
{ };
Run Code Online (Sandbox Code Playgroud)

是否有解决方案或不太昂贵的解决方法/最佳实践?

c++ templates typedef c++11

356
推荐指数
1
解决办法
16万
查看次数

如果我在C或C++中使用`typedef`,何时应该在typedef'ed类型的末尾添加`_t`?

我什么时候应该将尾随添加_ttypedef'ed类型?

例如,我应该这样做:

typedef struct image image_t;
Run Code Online (Sandbox Code Playgroud)

或这个:

typedef struct image image;
Run Code Online (Sandbox Code Playgroud)

一般规则是什么?

另一个例子,我应该这样做:

typdef enum { ARRAY_CLOSED, ARRAY_OPEN, ARRAY_HALFOPEN } array_type_t;
Run Code Online (Sandbox Code Playgroud)

或这个:

typdef enum { ARRAY_CLOSED, ARRAY_OPEN, ARRAY_HALFOPEN } array_type;
Run Code Online (Sandbox Code Playgroud)

请赐教.

谢谢,Boda Cydo.

c c++ typedef

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

标签 统计

c++ ×2

typedef ×2

c ×1

c++11 ×1

templates ×1