• <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            華劍緣
            一切都在這個過程中獲得,將那些目標埋藏于心中
            posts - 19,comments - 20,trackbacks - 0

            一個矩陣類Matrix 類,在構造函數中根據參數創建數據成員:一個二維數組,類中實際定義的二維數組的數據成員是一個指針 ( 二級指針 ) , int **pMatrix 。 在構造函數中根據傳送的參數為這個二維數組分配空間: pMatrix = newint[x][y]
            ~~~~~~~~
            ?int **pMatrix;
            pMatrix = new int [x][y] ;

            ~~~~~~~~




            *pMatrix = new int[x][y]
            這樣她提示什么

            ?error C2440: '=' : cannot convert from 'int (*)[1]' to 'int *'

            編譯器說new int [x][y]是int (*)[1]型的
            ?
            如果改成:
            int **pMatrix;
            *pMatrix= new int [x];

            倒可以通過編譯

            ??????


            //忘了從什么地方看到某人這么說:

            動態數組不能用在二維……
            動態數組實際上是一個指針,為其分配空間
            如果想設置二維數組的話,就必須設置一個指針類型的動態數組,數組中的每個項都是另一個二維數組
            舉例:
            int **a = new int* [m];
            for(int i=0; i<m; i++)
            ??a[i]= new int[n];

            釋放內存時要先
            for(i=0; i<m; i++)
            ??delete[] a[i];
            然后再
            delete[]??a;


            呵呵;

            posted on 2006-04-09 22:54 華劍緣 閱讀(615) 評論(2)  編輯 收藏 引用

            FeedBack:
            # re: 動態數組不能用在二維……(慚愧現在才知道)
            2006-04-10 09:19 | 沐楓
            你那是C語言。只不過是把malloc用new來替代罷了。
            真正的C語言(C99)是支持動態數組的,如:

            void func(int N)
            {
            int arr[N][N] = {0};
            ...
            }

            對于C++來說,則:
            void func(int N)
            {
            vector<vector<int> > arr(N);
            for_each(arr.begin(), arr.end(), bind2nd(mem_fun_ref(&vector<int>::resize), N));
            ...
            }
              回復  更多評論
              
            # re: 動態數組不能用在二維……(慚愧現在才知道)
            2006-04-11 16:09 | 任我行
            simulate array
            int **gf16 = (int**)malloc(sizeof(int*)*16);
            for (m = 0; m < 16; m++) {
            gf16[m] = (int*)malloc(sizeof(int)*4);
            }

            for (i = 0; i < 4; i++)
            gf16[i][i] = 1;   回復  更多評論
              
            精品久久久久久无码中文字幕一区 | 久久99精品综合国产首页| 国产99久久精品一区二区| 久久99久久99小草精品免视看| 国产91久久综合| 亚洲欧美成人综合久久久| 久久精品国产福利国产秒| 久久精品亚洲乱码伦伦中文| 亚洲人成无码久久电影网站| 久久99国内精品自在现线| 久久国产精品免费一区二区三区| 久久人人爽人人爽人人爽| 欧美激情精品久久久久| 99精品国产综合久久久久五月天| 国产精品久久久久国产A级| 欧美一级久久久久久久大| av午夜福利一片免费看久久| 久久综合久久美利坚合众国| 秋霞久久国产精品电影院| 久久人妻少妇嫩草AV无码专区| 久久91精品综合国产首页| 国产精品女同久久久久电影院 | 久久久久人妻一区二区三区vr | 99久久精品免费看国产一区二区三区| 四虎国产精品免费久久5151 | 日韩AV无码久久一区二区| 国产日韩久久久精品影院首页| 色婷婷综合久久久中文字幕| 久久久久久午夜精品| 久久免费大片| 国产无套内射久久久国产| 久久精品视频免费| 99久久精品国产高清一区二区| 日韩精品无码久久久久久| 香蕉久久av一区二区三区| 亚洲国产精品无码久久98| 久久国产欧美日韩精品| 亚洲AV乱码久久精品蜜桃| 99精品久久精品一区二区| 午夜精品久久久久久中宇| 精品久久久久久无码中文字幕一区 |