美文网首页
Boolan C++(上)1

Boolan C++(上)1

作者: rrreal | 来源:发表于2017-04-20 21:30 被阅读0次

    1.使用自己写的头文件,需要使用双引号也可以在引号中加上路径,例如:#include “../include/complex.h”。尖括号的头文件表示使用系统默认路径的头文件。

    使用时需要注意:

    (1)c++程序推荐以.cpp结尾,可以是.c .C .cc .c++

    (2)标准的c++ 头文件 没有.h

    2.为了在包含头文件的时候不发生重复声明/定义,加上防卫式声明很有必要。

    3.学会了头文件布局的规范型,前置声明,class声明以及class template模板。在有的时候我们不确定要定义的类里面的数据类型,我们可以使用模板来定义这个数据。这样在类实例化的时候可以临时定义它的数据类型。使用模板T时要在开头加上一句声明。

    4.inline函数:一个函数如果在class内部完成定义,那他就已经是inline函数。如果函数的定义在class外部那么就不是inline函数,但是就是想把函数变成inline函数需要在头文件中(类外)直接定义,不能在别的.cpp文件中定义。inline函数的执行效率比一般的函数要快,但是inline这个关键词只是给编译器的一个建议,编译器到底有没有把函数编译成inline 函数我们不知道(一般比较短小的函数可以)。

    5.三种访问级别分别是public,protected,private。

    属于public的声明在类外可以直接调用,一般原则是不要把class的数据做成public,因为让数据保持私有才能符合面向对象的编程理论之一,只有class自己才能改变自己的数据,外部只能通过class的方法(就是函数)改变类的数据,这样保证了类中数据的安全性,数据只能通过合乎规则的方式被更新。

    属于private的声明只能被类本身的成员函数使用,private声明在类外是可见的(名字是知道的),但是不能访问,数据最好放在private下,因为C++强调封装,函数也可以。

    6.构造函数

    构造函数很特殊,一般函数都有返回类型(void也是的),而构造函数没有,也不必有,因为构造函数就是用来创建对象的(所以构造函数名必需和类名一样),创建对象不需要返回值。

    掌握了三种调用构造函数的创建方法。对象被创建自动调用,如果没有指定数值,参数就默认初始化成0;如果指定,就初始化成指定值。

    初始化阶段设值比赋值阶段赋值要更大气,效率更高,初始化列表只有构造函数有。

    构造函数可以写多个(C++有overload特性),以满足不同的初始化需求。造函数一般不放在private里头,但是也有特殊情况,例如视频里给出的singleton单体。

    7.参数传递

    传递参数一般使用引用传递(pass by reference),因为类里的数据一般较为庞大,如果使用值传递会消耗较大的资源,而引用在底层就相当于指针,因此可以消耗少量资源进行参数的传递。

    8.操作符重载

    在C++里头操作符事实上被看作一个函数,它可以被重新定义。(这一块看不太懂。。。C还没学好感觉C++好难。。。过段时间学扎实了再回来编辑,加油)

    相关文章

      网友评论

          本文标题:Boolan C++(上)1

          本文链接:https://www.haomeiwen.com/subject/bhmxuttx.html