トップページに戻る    次のC++のサンプルへ    前のC++のサンプルへ

2-3 STLのVectorでジャグ配列もどき

C++のサンプル

Vectorでジャグ配列もどきを実装します。


ソース

#include <stdio.h>
#include <vector>

using namespace std;

void main()
{
    int wkArr01[]= {3};
    int wkArr02[]= {7,4};
    int wkArr03[]= {2,4,6};
    int wkArr04[]= {8,5,9,3};
    vector<int> Sankaku[]={
        vector<int>(wkArr01,wkArr01+sizeof(wkArr01)/sizeof(int)),
        vector<int>(wkArr02,wkArr02+sizeof(wkArr02)/sizeof(int)),
        vector<int>(wkArr03,wkArr03+sizeof(wkArr03)/sizeof(int)),
        vector<int>(wkArr04,wkArr04+sizeof(wkArr04)/sizeof(int))};

    for(int I=0;I<=(int)sizeof(Sankaku)/sizeof(Sankaku[0])-1;I++){
        for(int J=0;J<=(int)Sankaku[I].size()-1;J++){
            printf("Sankaku[%d].at(%d)=%d\n",I,J,Sankaku[I].at(J));
        }
    }
}


実行結果

Sankaku[0][0]=3
Sankaku[1][0]=7
Sankaku[1][1]=4
Sankaku[2][0]=2
Sankaku[2][1]=4
Sankaku[2][2]=6
Sankaku[3][0]=8
Sankaku[3][1]=5
Sankaku[3][2]=9
Sankaku[3][3]=3


解説

Vectorのビルトイン配列で、ジャグ配列もどきを実装してます。