为了账号安全,请及时绑定邮箱和手机立即绑定
  • 构造函数的规则和特点2

    查看全部
  • 构造函数的规则和特点

    查看全部
  • 栈区的特点:

        内存由系统来进行控股,无论是分配还是回收都不需要程序员关心。
    堆区的特点:

        new分配出来的内存,会到堆区未来一定要用delete

    查看全部
  • class Car{
        Car();
        Car(string name);
    };
    Car::Car(){      //不加void
        m_strName="abc";
    }
    Car::Car(string name){
        m_strName=name;
    }


    查看全部
  • 构造函数:在对象实例化时被自动调用(且仅被调用一次)

    构造函数与类同名,没有返回值,连void都不用写,可以重载

    当用户没有定义构造函数时,编译器自动生成一个(这个函数啥也不做)

    1、无参的构造函数

    class Car{
    public:
        Car(){
            m_strName="jam";   //构造函数与类名相同,都是Car
        }  
    private:
        string m_strName; 
    }

    2、有参的构造函数

    class Car{
    public:
        Car(string name){
            m_strName = name;
        }  
    private:
        string m_strName; 
    }


    查看全部
  • 内存分区的笔记


    查看全部
  • 【内存分区】

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

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

    全局区

    常量区:string str=“hello”;

    代码区

    查看全部
  • 分文件定义:

    1、在头文件建立一个.h格式的头文件

    将类的声明(成员函数的声明)放在头文件,即class Car{...}

    #include <string>
    using namespace std;

    2、在源文件建立一个同名的.cpp文件,将对类的定义(成员函数的具体定义)放进去

    #include "Car.h"    //""是从自定义的文件中找,<>是从函数库中找
    #include <iostream>
    using namespace std;

    3、在main.cpp中也要声明#include "Car.h",但是不需要声明Car.cpp

    查看全部
  • 【内联函数】用关键字inline定义,例如:

    inline void fun(){
        cout << "Hello" << endl;
    }

    内联函数编译时,直接将 函数体代码和实参 代替 函数调用语句

    相比普通函数,减少了函数调用和调用返回的步骤

    【类内定义】:即class内定义的函数,编译器会优先将其编译为inline函数,但是inline不用写出来

    【类外定义】:

    1、同文件类外定义:成员函数定义在类的外面,但是跟类的定义在同一个文件中

    class Car{
    public:
        void run();
    };
    void Car::run(){...}

    2、分文件类外定义【更常用】

    在Car.h的头文件中定义了class Car

    在Car.cpp中:

    #include "Car.h"   //必须要声明Car.h头文件,才能正确找到
    void Car::run(){...}


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

    2018-12-12

  • 内联函数与普通函数的区别


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

    2018-12-12

  • 在写成员函数时

    1、若不需要return,定义为void类型

    2、return整型,定义为int;return字符串,定义string

    查看全部
  • 在private中定义数据成员

    在public中决定是只读还是读写都可以

    void setName(string _name){
        m_strName = _name;   //写
    }
    void getName(){
        return m_strName;   //读
    }


    查看全部
  • class Car{  //如何设置只读属性
    public:
        int getWheelCount(){
            return m_iWheelCout;  //在public中只能读出
        } 
    private:
        int m_iWheelCount;    //在private中定义的轮子个数
    }


    查看全部
  • 赋初值的必要性


    查看全部
  • 封装的好处

    规定限制

    使结果合法

    查看全部

举报

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

微信扫码,参与3人拼团

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

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