为了账号安全,请及时绑定邮箱和手机立即绑定
  • 封装的好处:

    http://img1.sycdn.imooc.com//5d8841fd0001ee7a07620376.jpg

    查看全部
  • 封装的好处:

    http://img1.sycdn.imooc.com//5d8841a90001873008640465.jpg

    查看全部
  • 数据封装,应该将自身的数据设置与获取都由函数实现:

    http://img1.sycdn.imooc.com//5d8840440001a63306680446.jpg

    查看全部
  • string的连接操作:

    http://img1.sycdn.imooc.com//5d88389500014d0f07580433.jpg


    查看全部
    0 采集 收起 来源:C++ 初始String

    2019-09-23

  • 1.从栈中实例化对象:

    http://img1.sycdn.imooc.com//5d8772ac0001bb2507480391.jpg

        系统会自动释放掉内存


    2.从堆中实例化对象:

    http://img1.sycdn.imooc.com//5d877293000197c008060426.jpg

        需要手动释放内存

    3.如何访问对象

    http://img1.sycdn.imooc.com//5d8774a5000144bd07400473.jpg

    http://img1.sycdn.imooc.com//5d87740c0001756c07850435.jpg


    查看全部
  • #include <iostream>

    #include <string>

    using namespace std;

    /**

     * 定义类:Student

     * 数据成员:m_strName

     * 无参构造函数:Student()

     * 有参构造函数:Student(string _name)

     * 拷贝构造函数:Student(const Student& stu)

     * 析构函数:~Student()

     * 数据成员函数:setName(string _name)、getName()

     */

    class Student

    {

    public:

    Student(){};

    Student(string _name){m_strName=_name;}

    Student(const Student& stu);

    ~Student(){}

    void setName(string _name){

        m_strName=_name;

    }

    string getName(){

        return m_strName;

    }

    private:

    string m_strName;

    };






    int main(void)

    {

        // 通过new方式实例化对象*stu

        Student *stu = new Student();

        

        // 更改对象的数据成员为“慕课网”

    stu->setName("慕课网");

        // 打印对象的数据成员

    cout<<stu->getName()<<endl;

    delete stu;

    stu=NULL;

    return 0;

    }


    查看全部
    0 采集 收起 来源:综合练习

    2019-09-18

  • 分文件写
    查看全部
  • 申请内存--初始化列表---构造函数--参与运算--析构函数--释放内存

    查看全部
    0 采集 收起 来源:C++ 析构函数

    2019-09-10

  • 析构函数定义:~类名();析构函数不许加任何参数,析构函数的作用是释放资源;

    若没有自定义,系统会自动产生;

    析构函数没有返回值,没有参数也就不能重载

    查看全部
    0 采集 收起 来源:C++ 析构函数

    2019-09-10

  • 1)拷贝构造函数:类名(const 类名 &变量名)

    2)构造函数分为无参构造函数和有参构造函数

    3)所有的无参构造函数都是默认构造函数;

    4)有参构造函数包括参数带默认值的和参数无默认值的,所有参数都带有默认值则是默认构造函数

    5)系统会自动生成构造函数,生成的包括普通构造函数和拷贝构造函数

    6)初始化列表在普通构造函数和拷贝构造函数后


    查看全部
  • Teacher.h类中声明:

    class Teacher{

    public:

        Teacher(string name = "jim", int age = 1,imt m=100);

        void setName(string name);

        string getName();

        void setAge(int age);

        int getAge();


    private: 

        string m_strName;

        int m_iAge; 

        const in m_iMax; //有const数据成员时,只能用初始化列表赋值。

    };

    Teacher类中的构造函数定义:

    //普通初始化

    Teacher::Teacher(string name , int age,int m )

    {

        m_strName = name;

         m_iAge = age;

          m_iMax = m; //这样处理就错了,因为m_iMax是一个const变量,是不能被改变的,

    }

    初始化列表给赋值

    Teacher::Teacher(string name , int age, int m  ):m_strName(name),m_iAge(age),m_iMax(m)

    {


    }

    若数据成员为const类型,则在初始化时,只能需要使用构造函数的初始化列表方式进行初始化。

    查看全部
  • 构造函数用于类中成员变量的初始化

    查看全部
  • 内存划分:栈区、堆区、全局区、常量区、代码区。

    栈区:int x =0; int *p=null;

    堆区:int *p =new int[20];

    全局区:存储全局变量以及静态变量

    常量区:string str ="hello";

    代码区:存储逻辑代码的二进制

    查看全部
  • 内联函数:inline,一般使用于函数逻辑简单

    类内定义:是指将成员函数的定义放在class类内部的定义

    两者的联系:类内定义会将简单的成员函数当做类联函数来用,但是不会出现inline关键字

    类外定义:分为同文件类外定义和分文件类外定义。

    查看全部
    0 采集 收起 来源:类外定义

    2019-09-10

  • 数据的封装:只希望外界读取,不希望外界改变;

    以对象为中心,以谁做什么表达程序的逻辑,体现在代码层面就是将所有的数据操作转化为成员函数的调用,即对象在程序中的所有行为都通过调用自己的函数来完,如何用函数来封装数据成员呢,

    查看全部

举报

0/150
提交
取消
课程须知
本课程是C++初级课程 需要熟练掌握C++语言基础语法
老师告诉你能学到什么?
1、类的定义与对象实例化 2、string类型及属性封装 3、类外定义 4、构造函数与初始化列表 5、析构函数

微信扫码,参与3人拼团

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

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