大挪耗

c++STL其他容器

#include "iostream"
#include "array"
using namespace::std;

//void func(int arr[][5],int len)
//{
//    for (int ii = 0; ii < 10; ++ii) {
//        for (int jj = 0; jj < 5; ++jj) {
//            cout<<arr[ii][jj]<<" ";
//        }
//        cout<<endl;
//    }
//}
//
//void func(const array<array<int,5>,10>&arr)
//{
//    for (int ii = 0; ii < arr.size(); ++ii) {
//        for (int jj = 0; jj < arr[ii].size(); ++jj) {
//            cout<<arr[ii][jj]<<" ";
//        }
//        cout<<endl;
//    }
//}

template<typename T>
void func(const T&arr)
{
    for (int ii = 0; ii <arr.size() ; ++ii) {
        for (int jj = 0; jj < arr[ii].size(); ++jj) {
            cout<<arr[ii][jj]<<" ";
        }
        cout<<endl;
    }
}


int main()
{
    //int aa[10]={1,2,3,4,5,6,7,8,9,10};//一维数组。
    array<int,10>aa={1,2,3,4,5,6,7,8,9,10};//一维数组。
//    for (int ii = 0; ii < 10; ++ii) {//传统的方法。
//        cout<<aa[ii]<<" ";
//    }
//    cout<<endl;
//
//    for (auto val:aa) {//利用array的size()方法.
//    cout<<val<<" ";
//    }
//    cout<<endl;
//
//    for (auto it = aa.begin(); it < aa.end(); it++) {//使用迭代器
//        cout<<*it<<" ";
//    }
//    cout<<endl;
//    for (auto val:aa) {//基于范围的for循环。
//        cout<<val<<" ";
//    }
//    cout<<endl;

    //对二维函数赋值
//    int bb[10][5];
//    for (int ii = 0; ii < 10; ++ii) {
//        for (int jj = 0; jj < 5; ++jj) {
//            bb[ii][jj]=jj*10+ii;
//        }
//    }
//
//    func(bb,10);//把二维数组传值给函数


    array<array<int,5>,10> bb;

    for (int ii = 0; ii < bb.size(); ++ii) {
        for (int jj = 0; jj < bb[ii].size(); ++jj) {
            bb[ii][jj]=jj*10+ii;
        }
    }

    func(bb);//把二维数组传给函数





}

输出:

0 10 20 30 40
1 11 21 31 41
2 12 22 32 42
3 13 23 33 43
4 14 24 34 44
5 15 25 35 45
6 16 26 36 46
7 17 27 37 47
8 18 28 38 48
9 19 29 39 49


已发布

分类

可以收藏大挪耗一下。下载麻烦点城通网盘,站长保证下载速度,不会限速的,放心点就是了;分卷,安卓下载为txt:程序下载为url,不会下载参考不会下载。如果你想让本站活的久一点,请直接捐助

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注