要对模板形成一种直观的感觉:
轮子哥的这个模板 MyArray<typename _T_value, int _demension> 就是很自然。
保存int[4][5][6][7]这个数据,实际上只要内存中的 int[4*5*6*7]这么个空间就够了 (用一维内存来存储逻辑上的多维数组,元素个数一样多就够存了)
对于一个多维的T类型的数组,实际只有3个定义/构造它的参数值:① 存储的值类型T ② 维度 ③每一维的长度
——> 如果只有①③的话,那我定义这个模板的参数不好写,变长参数??(因为()参数必然是放每一维的长度,那么不告诉我维度的话难写)
现在如果我提供给你这3个构造的参数信息,你去用一维的空间去存储出它就好了。 难点难在要 ①支持