带有 using 关键字的 C++ 类型别名
C++ type alias with using keyword
是否可以在 c++ 中使用 using
关键字定义此类类型别名?
语法如何?我试过了using const_type = typename const T::type
没用
template <typename T>
class DoubleBuffer {
typedef T value_type;
typedef T& reference;
typedef T const & const_reference;
typedef T* pointer;
const_reference operator[](const size_t pos){
...
}
};
template <typename T>
class DoubleBuffer {
public:
using value_type = T;
using reference = T&;
using const_reference = T const &;
using const_type = const typename T::type;
using pointer = T*;
//...
};
或者:
template <typename T>
class DoubleBuffer {
public:
using value_type = T;
using reference = T&;
using const_reference = T const &;
using const_type = const T;
using pointer = T*;
//...
};
取决于 T
实际上是什么 - 定义了嵌套 type
的 struct
/class
或独立类型。
是否可以在 c++ 中使用 using
关键字定义此类类型别名?
语法如何?我试过了using const_type = typename const T::type
没用
template <typename T>
class DoubleBuffer {
typedef T value_type;
typedef T& reference;
typedef T const & const_reference;
typedef T* pointer;
const_reference operator[](const size_t pos){
...
}
};
template <typename T>
class DoubleBuffer {
public:
using value_type = T;
using reference = T&;
using const_reference = T const &;
using const_type = const typename T::type;
using pointer = T*;
//...
};
或者:
template <typename T>
class DoubleBuffer {
public:
using value_type = T;
using reference = T&;
using const_reference = T const &;
using const_type = const T;
using pointer = T*;
//...
};
取决于 T
实际上是什么 - 定义了嵌套 type
的 struct
/class
或独立类型。