今日结果:(友元和运算符重载)
1 友元破坏了类的封装性。(和goto语句一样尽可能的少用)friend 类型 函数名(参数表){}。
2 运算符重载:把运算符当作一个函数来看,当对象比较大小时可以用运算符重载;重载函数必须是类的成员或友元函数;
原型格式: 函数类型 operator 运算符(参数表);//给类对象自己是左操作数,参数表的参数为右操作数;
定义格式: 类型 类名:: operator 运算符(参数表){}/
3 单目运算符: 不带参数,该类的对象为唯一的操作数;
双目运算符:带一个参数,左操作数为类自己的操作数,右操作数为参数(对于友元运算符重载带两个参数,一个左操作 数一个右操作数);例如:
COM operator +(COM com1) // COM 类名(COM的两个私有int成员real, image) 并为COM 的成员
{
COM com ;
com.real = this->real + com1.real; // this 为指向类自己的成员
com.image = this->image + com1.image ;
}
friend COM operator +(COM com1 , COM com2) // 为COM 类的友元函数
{
COM com;
com.real = com1.real + com2.real ;
com.image = com1.image + com2.image;
}
4 运算符不能是新发明的自创的运算符; 不能改变运算符的操作对象的个数。
5 不可重载的运算符: . .* :: ?:: sizeof
明日计划:早上起来先去吃上三笼小笼包吧,然后完成老师布置的用运算符链接链表的作业, 再进行类的整体复习,并且做相应是编程题,再拿出点时间去学习 linux基础 。
感想: 真的如自己所想,一回生,二回熟的,自己也适应到这个新的学习环境中了,经过了4,5次的C++课程基本上老师讲的都是类的知识,这个更体现了C++的核心,类的面向对象的过程。自己在类的学习中一定要学透,尽可能的掌握更多类的知识点。还有就是说有点小迷惑,C语言有他的链表 和文件操作,那么相应的C++也应该有想类似的操作,可能就是同学所讲的C++的容器和数据库的东西吧, 有时间的话自己也对其进行琢磨和练习一下。培训的这将近两月中,得到最大的东西就是如何跟着别人学,如何自学,对于自己来说就是,吸取别人一些好的学习方法,自己在花时间自主的学习。
1 友元破坏了类的封装性。(和goto语句一样尽可能的少用)friend 类型 函数名(参数表){}。
2 运算符重载:把运算符当作一个函数来看,当对象比较大小时可以用运算符重载;重载函数必须是类的成员或友元函数;
原型格式: 函数类型 operator 运算符(参数表);//给类对象自己是左操作数,参数表的参数为右操作数;
定义格式: 类型 类名:: operator 运算符(参数表){}/
3 单目运算符: 不带参数,该类的对象为唯一的操作数;
双目运算符:带一个参数,左操作数为类自己的操作数,右操作数为参数(对于友元运算符重载带两个参数,一个左操作 数一个右操作数);例如:
COM operator +(COM com1) // COM 类名(COM的两个私有int成员real, image) 并为COM 的成员
{
COM com ;
com.real = this->real + com1.real; // this 为指向类自己的成员
com.image = this->image + com1.image ;
}
friend COM operator +(COM com1 , COM com2) // 为COM 类的友元函数
{
COM com;
com.real = com1.real + com2.real ;
com.image = com1.image + com2.image;
}
4 运算符不能是新发明的自创的运算符; 不能改变运算符的操作对象的个数。
5 不可重载的运算符: . .* :: ?:: sizeof
明日计划:早上起来先去吃上三笼小笼包吧,然后完成老师布置的用运算符链接链表的作业, 再进行类的整体复习,并且做相应是编程题,再拿出点时间去学习 linux基础 。
感想: 真的如自己所想,一回生,二回熟的,自己也适应到这个新的学习环境中了,经过了4,5次的C++课程基本上老师讲的都是类的知识,这个更体现了C++的核心,类的面向对象的过程。自己在类的学习中一定要学透,尽可能的掌握更多类的知识点。还有就是说有点小迷惑,C语言有他的链表 和文件操作,那么相应的C++也应该有想类似的操作,可能就是同学所讲的C++的容器和数据库的东西吧, 有时间的话自己也对其进行琢磨和练习一下。培训的这将近两月中,得到最大的东西就是如何跟着别人学,如何自学,对于自己来说就是,吸取别人一些好的学习方法,自己在花时间自主的学习。