當前位置:編程學習大全網 - 編程語言 - C++最簡單的編程 用vc6.0出現錯誤 syntax error : missing ';' before '}'

C++最簡單的編程 用vc6.0出現錯誤 syntax error : missing ';' before '}'

少壹個{,這是粗心錯誤。

#include<iostream>

#include<cstdlib>

using namespace std;

class Matrix

{

private:

int ROW,LINE;

int **p;

public:

Matrix(int R,int L);

~Matrix()

{

delete [] p;

}

Matrix(Matrix& otherMatrix);

void Input(void);

void Print(void);

Matrix add(Matrix otherMatrix);

Matrix subtract(Matrix otherMatrix);

};

Matrix::Matrix(int R,int L)

{

ROW=R;

LINE=L;

int i;

p=new int*[R];//C++的動態二維數組是這樣申請的,先申請第壹維,再申請第二維 ,p[ROW]是壹個數組,數組中的每個元素都是整形數組

for(i=0;i<=R-1;i++)

{

p[i]=new int[L];//對壹維數組中的每壹個元素都賦於壹個數組

}

}

Matrix::Matrix(Matrix& otherMatrix)//拷貝構造函數其實之前對象的雛形框架已經是系統自動形成了,這個函數中需要申明的只是對其具體量進行賦值

{

int i,j;

ROW=otherMatrix.ROW;

LINE=otherMatrix.LINE;

int k;

p=new int*[ROW];

for(k=0;k<=ROW-1;k++)

{

p[k]=new int[LINE];

}

for(i=0;i<=ROW-1;i++)

{

for(j=0;j<=LINE-1;j++)

{

p[i][j]=otherMatrix.p[i][j];

}

}

}

void Matrix::Input(void)

{

int i,j;

cout<<"請輸入"<<ROW<<"行"<<LINE<<"列的矩陣\n";

for(i=0;i<=ROW-1;i++)

{

for(j=0;j<=LINE-1;j++)

{

cin>>p[i][j];

}

}

}

void Matrix::Print(void)

{

int i,j;

for(i=0;i<=ROW-1;i++)

{ //少壹個{

for(j=0;j<=LINE-1;j++)

{

cout<<p[i][j]<<" ";

}

cout<<"\n";

}

}

Matrix Matrix::add(Matrix otherMatrix)

{

int i,j;

Matrix C(ROW,LINE);

for(i=0;i<=ROW-1;i++)

{

for(j=0; j<=LINE-1;j++)

{

C.p[i][j]=p[i][j]+otherMatrix.p[i][j];

}

}

return C;

}

Matrix Matrix::subtract(Matrix otherMatrix)

{

int i,j;

Matrix C(ROW,LINE);

for(i=0;i<=ROW-1;i++)

{

for(j=0; j<=LINE-1;j++)

{

C.p[i][j]=p[i][j]-otherMatrix.p[i][j];

}

}

return C;

}

main()

{

int ROW,LINE;

cout<<"請輸入妳想做運算的兩個矩陣的行數和列數"<<endl;

cin>>ROW;

cin>>LINE;

Matrix A1(ROW,LINE);

Matrix A2(ROW,LINE);

Matrix A3(ROW,LINE);

cout<<"輸入第壹個矩陣"<<endl;

A1.Input();

cout<<"輸入第二個矩陣"<<endl;

A2.Input();

Matrix pA1(A1);

Matrix pA2(A2);//調用拷貝構造函數將A1和A2前面加上p也可以

cout<<"第壹個矩陣是"<<endl;

pA1.Print();

cout<<"第二個矩陣是"<<endl;

pA2.Print();

A3=pA1.add(pA2);

cout<<"矩陣的和是"<<endl;

A3.Print();

A3=pA1.subtract(pA2);

cout<<"矩陣的差是"<<endl;

A3.Print();

system("pause");

return 0;

}

  • 上一篇:web前端開發工程師需要掌握哪些技術
  • 下一篇:增量編碼器和絕對值編碼器的區別及應用場合?
  • copyright 2024編程學習大全網