W3Cschool
恭喜您成為首批注冊用戶
獲得88經(jīng)驗值獎勵
apmatrix是二維的,除此之外它與apvector很像。不同于向量的長度,apmatrix有兩個維度,稱為numrows和numcols,分別表示“行數(shù)”和“列數(shù)”。
矩陣中的每個元素用兩個索引來識別,其中一個是行編號,另一個是列編號。
要創(chuàng)建一個矩陣,有四種可選的構(gòu)造函數(shù):
apmatrix<char> m1;
apmatrix<int> m2 (3, 4);
apmatrix<double> m3 (rows, cols, 0.0);
apmatrix<double> m4 (m3);
第一個構(gòu)造函數(shù)什么都沒做,它創(chuàng)建的矩陣行數(shù)和列數(shù)都是0。第二個有兩個整型數(shù)類型的參數(shù),依次是行數(shù)和列數(shù)的初始值。第三個構(gòu)造函數(shù)添加了一個參數(shù)用于初始化矩陣的元素,其余與第二個相同。第四個是復(fù)制構(gòu)造函數(shù),它以另一個apmatrix對象為參數(shù)。
就像apvectors一樣,我們可以創(chuàng)建任何類型的apmatrix對象 (包括apvector,甚至apmatrix等類型)。
要訪問矩陣的元素,我們使用[]操作符來指定行和列的信息:
m2[0][0] = 1;
m3[1][2] = 10.0 * m2[0][0];
如果我們想嘗試訪問范圍之外的元素,程序會打印錯誤信息并退出。
numrows和numcols兩個函數(shù)分別獲取矩陣的行數(shù)和列數(shù)。記住,行索引是0到numrows() -1之間的數(shù),而列索引是0和numcols() -1之間的數(shù)。
常用嵌套循環(huán)來遍歷矩陣。下面循環(huán)將矩陣中每個元素的值設(shè)置為其行索引和列索引的和:
for (int row=0; row < m2.numrows(); row++) {
for (int col=0; col < m2.numcols(); col++) {
m2[row][col] = row + col;
}
}
循環(huán)打印時,矩陣每一行的元素使用制表符分隔,列之間以換行符分隔:
for (int row=0; row < m2.numrows(); row++) {
for (int col=0; col < m2.numcols(); col++) {
cout << m2[row][col] << "\t";
}
cout << endl;
}
Copyright©2021 w3cschool編程獅|閩ICP備15016281號-3|閩公網(wǎng)安備35020302033924號
違法和不良信息舉報電話:173-0602-2364|舉報郵箱:jubao@eeedong.com
掃描二維碼
下載編程獅App
編程獅公眾號
聯(lián)系方式:
更多建議: