为了账号安全,请及时绑定邮箱和手机立即绑定
  • 传入引用 更快

    查看全部
    0 采集 收起 来源:[C++]友元函数

    2018-08-19

  • template typename class

    class表明数据类型

    查看全部
    0 采集 收起 来源:[C++]函数模板

    2018-08-16

  • <<   返回值必须是ostream&  !!!

    查看全部
  • 前置++与后置++比就是后置有个参数

    Coordinate &operator++();

    Coordinate &operator++(int);

    查看全部
  • 7
    查看全部
    0 采集 收起 来源:课程简介

    2018-08-13

  • << 运算符重载必须是友元函数

    查看全部
  • 迭代器遍历

    查看全部
  • 向量的常用函数

    查看全部
  • Watch(Time &t):m_tTime(t){}  构造函数,打破僵化思维:1.定义的类也可以作为参数的数据类型来使用;2.参数是引用时,传入的参数为对象名而不是地址。

    查看全部
    0 采集 收起 来源:单元巩固

    2018-08-03

  • 标准模板库STL

    1、vector向量

     特点:读取能在常数时间完成

    初始化vector对象的方法:

    vector<T> v1:保存类型为T的对象。默认构造函数v1为空

    vector<T> v3(n,i):v3包含n个值为i的元素 

    遍历向量:可用迭代器

    格式   

    vector vec;
    vector<string>::iterator citer=vec.begin();
    for(;citer!=vec.end();citer++)
    //end()为向量最后一个元素的下一个位置
    {cout<<*citer<<endl;}

    2、list链表模板

    特点:数据插入速度快

    也可通过迭代器进行遍历访问

    3、map映射模板

    key->value

    map<string,string>m;
    pair<string,string>p1("s","shanghai");
    pair<string,string>p2("b","zhengzhou");
    m.insert(p1);
    m.insert(p2);
    cout<<m["s"]<<endl;
    cout<<m["b"]<<endl;


    查看全部
  • 类模板

    模板代码不能分离编译

    查看全部
    0 采集 收起 来源:[C++]类模板

    2018-07-31

  • 函数模板template关键字:运算过程相同,数据类型不同

    1、函数类型作为模板:

    举例:class

    template<class T>//class不是类的意思,只是用T做函数类型
    T max(T a,T b)
    {   return(a>b)?a:b;   }

    函数模板不使用时不产生数据。

    举例:typename

    template<typename T>
    void swap(T& a,T& b)
    {  T tmp=a;  a=b;  b=tmp;   }

    注:typename与class可以混用

    2、变量作为模板参数:

    template<int size>
    void display()
    { cout<<size<<endl; }
    //使用
    display <10>();

    3、函数模板与重载:


    查看全部
    0 采集 收起 来源:[C++]函数模板

    2018-07-30

  • 二元运算符重载:运算符对应的操作数有两个 

    典例:“+”运算符的重载

    成员函数重载实现://Coordinate类为例

    Coordinate operator+(const Coordinate &coor)

    {Coordinate t;  t.m_iX=this->m_iX+coor.m_iX;

    t.m_iY=this->m_iY+coor.m_iY;     return t; }

    友元函数重载:

    friend Coordinate operator+(const Coordinate &c1,const Coordinate &c2);

    输出<<符号的重载:

    注意函数返回值一定要是 ostream&

    查看全部
  • 运算符重载:给原有的运算符赋予新功能

    运算符重载本质:函数重载

    一元运算符:这个符号只与一个操作数进行运算

    举例:“-”的重载

    成员函数重载实现“-”重载:关键字operator

    类名& operator();      //实现时用函数实现


    友元函数重载实现“-”重载:

    freind 类名& operator-(类名 &引用名); //其返回值也是类的一个引用

    实现时返回*this。


    重载前置++与后置++

    区分:Coordinate operator++();//前置++

    Coordinate operator++(int);//后置++

    查看全部
  • C++中的静态Static

    静态数据成员与静态成员函数:

    静态数据成员不依赖于对象实例化存在,所以静态数据成员不在构造函数中实例化,它的实例化往往是单独进行的

    静态数据成员可通过类直接访问  类名::数据成员名

    实例化一个对象时,普通数据成员数量会随实例化对象的数量改变,而静态数据成员只有值发生变化,个数不会变化。

    普通成员函数或数据成员可以调用静态的,但静态的不可以调用普通的。

    从this指针角度看静态成员函数:

    静态成员函数并不会传入一个隐形的this指针,则无法区分调用的数据成员是哪一个对象的数据成员,故在静态成员函数中无法调用非静态数据成员或成员函数。

    Static的注意事项:

    a、静态数据成员必须单独初始化

    b、静态成员函数不能调用非静态成员函数和数据成员

    c、静态数据成员只有一份,并且不依赖对象而存在

    查看全部
    0 采集 收起 来源:[C++]静态

    2018-07-29

举报

0/150
提交
取消
课程须知
学习本课程需要有一定的C语言和C++语言基础。如基础不太扎实的同学可以,参与C++远征攻略的学习计划,友情链接 http://www.imooc.com/course/programdetail/pid/42
老师告诉你能学到什么?
1、友元函数及友元类的定义及使用方法 2、静态数据成员和静态成员函数的定义及使用方法 3、运算符重载的技巧 4、函数模板和类模板的定义及使用方法 5、标准模板库的使用方法及基本原理

微信扫码,参与3人拼团

意见反馈 帮助中心 APP下载
官方微信
友情提示:

您好,此课程属于迁移课程,您已购买该课程,无需重复购买,感谢您对慕课网的支持!