美文网首页
极客班第一周学习笔记

极客班第一周学习笔记

作者: 太帅JUE人 | 来源:发表于2016-10-10 14:40 被阅读0次

    初识C++

    C++是在C之上基于对象,面向对象的编程语言。c++相比c在编程上更加模块化,具象化。

    C++代码规范


    ●防卫试声明:

                        #ifndef "name"

                        #define"name"

                        #endif

     

    为了避免重复的定义和声明有必要使用防卫声明


    ●头文件:


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

    #include<iostream>

    #include<cmath>

    前置声明:先声明存在命名为complex的class,编译器才不会报错

    ●class的声明

    蓝色字体complex是类的名字,括号中的是本体。

    public:可以被该类中的函数、子类的函数、其友元函数、该类的对象访问。

    private:只能由该类中的函数、其友元函数访问。不能被该类的对象访问。PS:数据部分最好放在私有

    protected:可以被该类中的函数、子类的函数、其友元函数访问,不能被该类的对象访问。

    Friend:可以访问类内private和protected成员

    构造函数:命名与类名相同,没有返回值。主要作用于创建对象,初始化。re(r) == (re=r):类型名加括号表示创建临时对象,这是构造函数的一种语法,这样写表示受过良好训练。构造函数可以有很多个(重载)。

    class模板如图:

    template<typename T>表示还未确定数据类型,用T表示

    inline函数:在类中定义的函数成为inline函数,如real() image(),在类外你也可以写inline,具体如何处理由编译器决定。

    const函数:表示不会修改类内数据,如果成员函数不加const,调用对象再加const就会报错。

    ●参数传递

    引用概念:

    引用就是某一变量(目标)的一个别名,对引用的操作与对变量直接操作完全一样。

    引用的声明方法:类型标识符 &引用名=目标变量名;

    例:int a; int &ra=a; //定义引用ra,它是变量a的引用,即别名

    此处参数为引用,4字节传递更快,且比指针看起来舒服

    ●返回值传递

    使用引用传递,传递者无需知道接收者是以引用形式接收。C++也可以使用指针传递,但是接收者需要明确传过来的东西是一个指针,这明显没有引用方便。

    返回值的传递也有值传递和引用传递之分,使用引用返回必须保证返回的不是局部变量,在函数外已经存在,或者是动态内存分配出来的空间,或者是在函数内部创建的static变量这些分配的空间的生命周期如果大于该函数,就可以使用引用传递。

    ●操作符重载

    操作符重载关键字:operator


    灰色部分:编译器处理的时候有隐藏的THIS,表示调用的左值C2,但是实际些代码的时候不能手动填写会报错。而非成员函数参数要写全

    此处返回值不应是引用

    相关文章

      网友评论

          本文标题:极客班第一周学习笔记

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