之前想学C++想好久了,学校也上过这门课,不过讲到指针就到期末了,也没学到啥深的东西,后来买了本C++ Primer Plus,就自己慢慢看着,等到这次看到网上有培训班,就报了试试,跟着看看吧。我是个新手,超水的那种,,文中有什么不对的地方请各位大牛多多批评指正,小弟感激不尽啊
回到正题,这周主要学的是类的定义,包括构造函数,操作符重载啥的,我将老师上课讲的一些重点记录整理如下
一 养成良好的编程习惯
1.写头文件时写上ifndef 文件名
2.写函数时尽量用内联函数inline
3.写构造函数时,在定义的同时就赋值可提高代码效率
4.C++比其他语言效率高,速度快,因此编程时尽量简洁代码,提高效率,挖掘加强它的特性
二 写类时应注意的东西
1.数据一定放在private,不能直接暴露出来,要通过public中的函数去取
2.参数最好用引用来传
3.返回值最好也用引用来传
4.函数分为会改变数据内容的和不会改变数据的,不会改变数据内容的需要加上CONST(意为不改变数据内容),类的本体里的函数应该加const就得加,const的位置是加在函数小括号的后面,大括号的前面
5.构造函数有一个特殊的语法,在定义时就赋值
6.友元函数直接写在private中,拿数据比普通数据要快一些,相同class的各个objects互为友元,既数据可相互取
三 编程中遇到的问题
1.我在编程时在成员函数时打上了两个参数,被提示运算符函数的参数太多,上网查了一下,才知道是成员函数时只应该用一个参数,比如a+b;中a本身就是第一个参数,而定义成友员函数要定义两个参数
2.我原本在头文件中定义了一个类,也声明和定义了操作符的重载,但是在源文件中使用操作符时却提示我没有与操作数匹配的运算符,上网查了很久,也没查出结果,后来才发现是自己调用构造函数时格式错误,导致生成的类没有被赋值,既没有操作数;
大概就是酱~