MOOC清华《面向对象程序设计》第2章:类class的综合实验

来源:互联网 发布:神经网络算法分类 编辑:程序博客网 时间:2024/06/01 09:19

文件1:

#include <iostream>#include "matrix.h"using namespace std;int main() {Matrix m;m.fill(6);//m.data[0][0] = 1; //编译器报错:data[6][6]是私有成员 m.out();print(m);return 0;}


运行被注释掉的那行代码时编译器的报错信息:



文件2:

//matrix.h#ifndef MATRIX_H#define MATRIX_Hclass Matrix{private:int data[6][6];public:void fill(int num);void out();friend void print(Matrix obj);};#endif

文件3:

//matrix.cpp#include <iostream>#include "matrix.h"using namespace std;void Matrix::fill(int num){for(int i = 0; i < 6; i++)for(int j = 0; j < 6; j++)this->data[i][j] = num + i + j;}void Matrix::out(){for(int i = 0; i < 6; i++){for(int j = 0; j < 6; j++)cout << this->data[i][j] << '\t';cout << endl << endl;}}void print(Matrix obj){cout << "obj.data[0][0] = " << obj.data[0][0];}

运行结果:


本实验覆盖了类的定义、成员函数的定义、this指针、成员的访问权限、友元等知识点。

阅读全文
0 0
原创粉丝点击