【发布时间】:2019-09-12 08:46:14
【问题描述】:
我正在寻找初始化矩阵的推导指南。
我尝试使用 pack in pack 和 sizeof...、initializer_list<initializer_list<T>>、用于构造数组的自定义类,但没有任何效果...
所以,我正在寻找初始化
template <class T, size_t s1, size_t s2>
class matrix
{
T matr[s1][s2]; //maybe with custom array class, if this problem need this
public:
//constructor
};
//deductor
喜欢
matrix m{{1, 2}, {1, 2}};
或
matrix m({1, 2}, {1, 2});
【问题讨论】:
-
{/*..*/}的问题是它没有类型(或者intializer_list没有编译时间大小)。 -
matrix m{std::array{1, 2}, std::array{1, 2}};可能是可能的。
标签: c++ matrix c++17 template-argument-deduction