網頁

2016年12月16日 星期五

Ex12 C++ Class Constructor and Destructor

10 則留言:

  1. public:
    double term[row][col];

    Matrix() {
    cout << "Matrix() is called..." << endl;
    memset(term, 0, sizeof(term));
    }

    Matrix(double a[row][col]) {
    cout << "Matrix(double a[row][col]) is called..." << endl;
    for (int i = 0; i < row; i++) {
    for (int j = 0; j < col; j++)
    term[i][j] = a[i][j];
    }
    }

    Matrix(const Matrix& T) {
    cout << "Matrix(double a[row][col]) is called..." << endl;
    for (int i = 0; i < row; i++) {
    for (int j = 0; j < col; j++)
    term[i][j] =T.term[i][j];
    }
    }


    ~Matrix() {
    cout << term[0][0];
    cout << "DESTROYER......\n";
    }

    回覆刪除
  2. {
    public:
    double term[row][col];
    Matrix() {
    cout << "Matrix() is called..." << endl;
    memset(term, 0, sizeof(term));
    }

    Matrix(double a[row][col]) {
    cout << "Matrix(double a[row][col]) is called..." << endl;
    for (int i = 0; i < row; i++) {
    for (int j = 0; j < col; j++)
    term[i][j] = a[i][j];
    }
    }
    Matrix(const Matrix& T) {
    cout << "Matrix(const Matrix& T]) is called..." << endl;
    for (int i = 0; i < row; i++) {
    for (int j = 0; j < col; j++)
    term[i][j] = T.term[i][j];
    }
    }

    ~Matrix() {
    cout << term[0][0];
    cout << " DESTROYER...\n";
    }
    ......

    回覆刪除
  3. #include <iostream>
    #include <cstdlib>
    #include <cstring>
    using namespace std;
    #define row 3
    #define col 3
    class Matrix
    {
    public:
    double term[row][col];

    Matrix() {
    cout << "Matrix() is called...." << endl;
    memset(term, 0, sizeof(term));
    }

    Matrix(double a[row][col]) {
    cout << "Matrix(double a[row][col]) is called....." << endl;
    for (int i = 0; i < row; i++) {
    for (int j = 0; j < col; j++)
    term[i][j] = a[i][j];
    }
    }
    Matrix(const Matrix& T) {
    cout << "Matrix(const Matrix& T) is called....." << endl;
    for (int i = 0; i < row; i++) {
    for (int j = 0; j < col; j++)
    term[i][j] = T.term[i][j];
    }
    }

    ~Matrix() {
    cout << term[0][0];
    cout << "DESTROTER....\n";
    }

    double& operator()(int i, int j) {
    return term[i][j];
    }
    void print() {
    cout << "----------------\n";
    for (int i = 0; i < row; i++){
    for (int j = 0; j < col; j++) {
    cout << term[i][j] <<"\t";
    }
    cout << endl;
    }
    }
    };
    Matrix& operator+(Matrix A, Matrix B) {
    Matrix C;
    for (int i = 0; i < row; i++) {
    for (int j = 0; j < col; j++)
    C.term[i][j] = A(i, j) + B(i, j);
    }
    return C;
    }
    int main()
    {
    double a[3][3] = { { 1,2,3 },{ 4,5,6 },{ 7,8,9 } };
    double b[3][3] = { { 4,5,6 },{ 7,8,9 },{ 1,2,3 } };
    Matrix A(a), B(b);
    A.print();
    B.print();
    Matrix C = A + B;
    C.print();
    system("Pause");
    return 0;
    }

    回覆刪除
  4. #include <iostream>
    #include <cstdlib>
    #include <cstring>
    using namespace std;
    #define row 3
    #define col 3
    class Matrix
    {
    public:
    double term[row][col];
    Matrix() {
    cout << "....." << endl;
    memset(term, 0, sizeof(term)); }
    Matrix(double a[row][col]) {
    for (int i = 0; i < row; i++) {
    for (int j = 0; j < col; j++)
    term[i][j] = a[i][j];
    }
    }
    double& operator()(int i, int j) {
    return term[i][j];
    }
    void print() {
    for (int i = 0; i < row; i++){
    for (int j = 0; j < col; j++) {
    cout << term[i][j] <<"\t";
    }
    cout << endl;
    }
    }
    ~Matrix() {
    cout << term[0][0] ;
    cout << "DS" << endl;


    }
    };
    Matrix& operator+(Matrix A, Matrix B) {
    Matrix C;
    for (int i = 0; i < row; i++) {
    for (int j = 0; j < col; j++)
    C.term[i][j]= A(i,j)+B(i,j);
    }
    return C;
    }
    int main()
    {
    double a[3][3]= {{1,2,3}, {4,5,6},{7,8,9} };
    double b[3][3]= { { 4,5,6 },{ 7,8,9 },{ 1,2,3 } };
    Matrix A(a), B(b);
    A.print();
    B.print();
    Matrix C = A + B;
    C.print();
    system("Pause");
    return 0;
    }

    回覆刪除
  5. #include <iostream>
    #include <cstdlib>
    #include <cstring>
    using namespace std;
    #define row 3
    #define col 3
    class Matrix
    {
    public:
    double term[row][col];

    Matrix() {
    cout << "Matrix() is called...." << endl;
    memset(term, 0, sizeof(term));
    }

    Matrix(double a[row][col]) {
    cout << "Matrix(double a[row][col]) is called....." << endl;
    for (int i = 0; i < row; i++) {
    for (int j = 0; j < col; j++)
    term[i][j] = a[i][j];
    }
    }
    Matrix(const Matrix& T) {
    cout << "Matrix(const Matrix& T) is called....." << endl;
    for (int i = 0; i < row; i++) {
    for (int j = 0; j < col; j++)
    term[i][j] = T.term[i][j];
    }
    }

    ~Matrix() {
    cout << term[0][0];
    cout << "DESTROTER....\n";
    }

    double& operator()(int i, int j) {
    return term[i][j];
    }
    void print() {
    cout << "----------------\n";
    for (int i = 0; i < row; i++){
    for (int j = 0; j < col; j++) {
    cout << term[i][j] <<"\t";
    }
    cout << endl;
    }
    }
    };
    Matrix& operator+(Matrix A, Matrix B) {
    Matrix C;
    for (int i = 0; i < row; i++) {
    for (int j = 0; j < col; j++)
    C.term[i][j] = A(i, j) + B(i, j);
    }
    return C;
    }
    int main()
    {
    double a[3][3] = { { 1,2,3 },{ 4,5,6 },{ 7,8,9 } };
    double b[3][3] = { { 4,5,6 },{ 7,8,9 },{ 1,2,3 } };
    Matrix A(a), B(b);
    A.print();
    B.print();
    Matrix C = A + B;
    C.print();
    system("Pause");
    return 0;
    }

    回覆刪除
  6. #include
    #include
    #include
    using namespace std;
    #define row 3
    #define col 3
    class Matrix
    {
    public:
    double term[row][col];
    Matrix() {
    cout << "....." << endl;
    memset(term, 0, sizeof(term)); }
    Matrix(double a[row][col]) {
    for (int i = 0; i < row; i++) {
    for (int j = 0; j < col; j++)
    term[i][j] = a[i][j];
    }
    }
    double& operator()(int i, int j) {
    return term[i][j];
    }
    void print() {
    for (int i = 0; i < row; i++){
    for (int j = 0; j < col; j++) {
    cout << term[i][j] <<"\t";
    }
    cout << endl;
    }
    }
    ~Matrix() {
    cout << term[0][0] ;
    cout << "DS" << endl;


    }
    };
    Matrix& operator+(Matrix A, Matrix B) {
    Matrix C;
    for (int i = 0; i < row; i++) {
    for (int j = 0; j < col; j++)
    C.term[i][j]= A(i,j)+B(i,j);
    }
    return C;
    }
    int main()
    {
    double a[3][3]= {{1,2,3}, {4,5,6},{7,8,9} };
    double b[3][3]= { { 4,5,6 },{ 7,8,9 },{ 1,2,3 } };
    Matrix A(a), B(b);
    A.print();
    B.print();
    Matrix C = A + B;
    C.print();
    system("Pause");
    return 0;
    }

    回覆刪除
  7. #include
    #include
    #include
    using namespace std;
    #define row 3
    #define col 3
    class Matrix
    {
    public:
    double term[row][col];

    Matrix() {
    cout << "Matrix() is called...." << endl;
    memset(term, 0, sizeof(term));
    }

    Matrix(double a[row][col]) {
    cout << "Matrix(double a[row][col]) is called....." << endl;
    for (int i = 0; i < row; i++) {
    for (int j = 0; j < col; j++)
    term[i][j] = a[i][j];
    }
    }
    Matrix(const Matrix& T) {
    cout << "Matrix(const Matrix& T) is called....." << endl;
    for (int i = 0; i < row; i++) {
    for (int j = 0; j < col; j++)
    term[i][j] = T.term[i][j];
    }
    }

    ~Matrix() {
    cout << term[0][0];
    cout << "DESTROTER....\n";
    }

    double& operator()(int i, int j) {
    return term[i][j];
    }
    void print() {
    cout << "----------------\n";
    for (int i = 0; i < row; i++){
    for (int j = 0; j < col; j++) {
    cout << term[i][j] <<"\t";
    }
    cout << endl;
    }
    }
    };
    Matrix& operator+(Matrix A, Matrix B) {
    Matrix C;
    for (int i = 0; i < row; i++) {
    for (int j = 0; j < col; j++)
    C.term[i][j] = A(i, j) + B(i, j);
    }
    return C;
    }
    int main()
    {
    double a[3][3] = { { 1,2,3 },{ 4,5,6 },{ 7,8,9 } };
    double b[3][3] = { { 4,5,6 },{ 7,8,9 },{ 1,2,3 } };
    Matrix A(a), B(b);
    A.print();
    B.print();
    Matrix C = A + B;
    C.print();
    system("Pause");
    return 0;
    }

    回覆刪除
  8. #include
    #include
    #include
    using namespace std;
    #define row 3
    #define col 3
    class Matrix
    {
    public:
    double term[row][col];

    Matrix() {
    cout << "Matrix() is called...." << endl;
    memset(term, 0, sizeof(term));
    }

    Matrix(double a[row][col]) {
    cout << "Matrix(double a[row][col]) is called....." << endl;
    for (int i = 0; i < row; i++) {
    for (int j = 0; j < col; j++)
    term[i][j] = a[i][j];
    }
    }
    Matrix(const Matrix& T) {
    cout << "Matrix(const Matrix& T) is called....." << endl;
    for (int i = 0; i < row; i++) {
    for (int j = 0; j < col; j++)
    term[i][j] = T.term[i][j];
    }
    }

    ~Matrix() {
    cout << term[0][0];
    cout << "DESTROTER....\n";
    }

    double& operator()(int i, int j) {
    return term[i][j];
    }
    void print() {
    cout << "----------------\n";
    for (int i = 0; i < row; i++){
    for (int j = 0; j < col; j++) {
    cout << term[i][j] <<"\t";
    }
    cout << endl;
    }
    }
    };
    Matrix& operator+(Matrix A, Matrix B) {
    Matrix C;
    for (int i = 0; i < row; i++) {
    for (int j = 0; j < col; j++)
    C.term[i][j] = A(i, j) + B(i, j);
    }
    return C;
    }
    int main()
    {
    double a[3][3] = { { 1,2,3 },{ 4,5,6 },{ 7,8,9 } };
    double b[3][3] = { { 4,5,6 },{ 7,8,9 },{ 1,2,3 } };
    Matrix A(a), B(b);
    A.print();
    B.print();
    Matrix C = A + B;
    C.print();
    system("Pause");
    return 0;
    }

    回覆刪除
  9. #include
    #include
    #include
    using namespace std;
    #define row 3
    #define col 3
    class Matrix
    {
    public:
    double term[row][col];

    Matrix() {
    cout << "Matrix() is called...." << endl;
    memset(term, 0, sizeof(term));
    }

    Matrix(double a[row][col]) {
    cout << "Matrix(double a[row][col]) is called....." << endl;
    for (int i = 0; i < row; i++) {
    for (int j = 0; j < col; j++)
    term[i][j] = a[i][j];
    }
    }
    Matrix(const Matrix& T) {
    cout << "Matrix(const Matrix& T) is called....." << endl;
    for (int i = 0; i < row; i++) {
    for (int j = 0; j < col; j++)
    term[i][j] = T.term[i][j];
    }
    }

    ~Matrix() {
    cout << term[0][0];
    cout << "DESTROTER....\n";
    }

    double& operator()(int i, int j) {
    return term[i][j];
    }
    void print() {
    cout << "----------------\n";
    for (int i = 0; i < row; i++){
    for (int j = 0; j < col; j++) {
    cout << term[i][j] <<"\t";
    }
    cout << endl;
    }
    }
    };
    Matrix& operator+(Matrix A, Matrix B) {
    Matrix C;
    for (int i = 0; i < row; i++) {
    for (int j = 0; j < col; j++)
    C.term[i][j] = A(i, j) + B(i, j);
    }
    return C;
    }
    int main()
    {
    double a[3][3] = { { 1,2,3 },{ 4,5,6 },{ 7,8,9 } };
    double b[3][3] = { { 4,5,6 },{ 7,8,9 },{ 1,2,3 } };
    Matrix A(a), B(b);
    A.print();
    B.print();
    Matrix C = A + B;
    C.print();
    system("Pause");
    return 0;
    }

    回覆刪除
  10. B10233187 張郁柔2017年1月4日 上午9:19

    #include
    #include
    #include
    using namespace std;
    #define row 3
    #define col 3
    class Matrix
    {
    public:
    double term[row][col];

    Matrix() {
    cout << "Matrix() is called...." << endl;
    memset(term, 0, sizeof(term));
    }

    Matrix(double a[row][col]) {
    cout << "Matrix(double a[row][col]) is called....." << endl;
    for (int i = 0; i < row; i++) {
    for (int j = 0; j < col; j++)
    term[i][j] = a[i][j];
    }
    }
    Matrix(const Matrix& T) {
    cout << "Matrix(const Matrix& T) is called....." << endl;
    for (int i = 0; i < row; i++) {
    for (int j = 0; j < col; j++)
    term[i][j] = T.term[i][j];
    }
    }

    ~Matrix() {
    cout << term[0][0];
    cout << "DESTROTER....\n";
    }

    double& operator()(int i, int j) {
    return term[i][j];
    }
    void print() {
    cout << "----------------\n";
    for (int i = 0; i < row; i++){
    for (int j = 0; j < col; j++) {
    cout << term[i][j] <<"\t";
    }
    cout << endl;
    }
    }
    };
    Matrix& operator+(Matrix A, Matrix B) {
    Matrix C;
    for (int i = 0; i < row; i++) {
    for (int j = 0; j < col; j++)
    C.term[i][j] = A(i, j) + B(i, j);
    }
    return C;
    }
    int main()
    {
    double a[3][3] = { { 1,2,3 },{ 4,5,6 },{ 7,8,9 } };
    double b[3][3] = { { 4,5,6 },{ 7,8,9 },{ 1,2,3 } };
    Matrix A(a), B(b);
    A.print();
    B.print();
    Matrix C = A + B;
    C.print();
    system("Pause");
    return 0;
    }

    回覆刪除

HTML 編輯器