C++ 模板 template
#include <iostream> using namespace std; /* 模板的作用: 1. 不用声明类型, 传什么进来就是什么类型, 返回也是什么类型 2. 方法封装起来, 可以当公共类使用, 方便 */ template <class T> void mark2dArray(T ** &x, int numberofRows, int numberofColumns){ x = new T * [numberofRows]; for (int i = 0; i < numberofRows; i++) { x[i] = new T [numberofColumns]; } } // template 只针对下面函数、对象有效, 所以这里要在声明一次
template <class T> void delete2dArray(T ** &x, int numberofRows){ for (int i = 0; i < numberofRows; i++) { delete [] x[i]; } delete [] x; x = NULL; } int main(int argc, char const *argv []){ int rowsNum = 5; int columnsNum = 5; int ** a; mark2dArray(a, rowsNum, columnsNum); a[2][3] = 323; printf("%d\n", a[2][3]); delete2dArray(a, rowsNum); return 0; }
作者:沐禹辰
出处:http://www.cnblogs.com/renfanzi/
本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接。
出处:http://www.cnblogs.com/renfanzi/
本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接。