C++ ——- 类和对象

C++面向对象的三大特性:封装、继承、多态

一、封装 

  封装的意义:将属性和行为作为一个整体,表现生活中的事物

        将属性和行为加以权限控制

C++ ------- 类和对象

 1 #include<iostream>
 2 #include<string>
 3 using namespace std;
 4 
 5 // 创建学生类
 6 class Student {
 7 
 8 public:  // 公共权限
 9     string name;
10     int studentNumber;
11 
12     void showStudent()
13     {
14         cout << "学生的姓名: " << name << endl;
15         cout << "学生的学号: " << studentNumber << endl;
16     }
17 };
18 
19 int main()
20 {
21     Student stu;
22 
23     stu.name = "高鹏";
24     stu.studentNumber = 10000;
25 
26     stu.showStudent();
27     
28     system("pause");
29     return 0;
30 }

创建学生类

    访问权限有三种:public 公共权限 → 类内可以访问,类外可以访问、protected 保护权限 → 类内可以访问,类外不可以访问、private 私有权限 → 类内可以访问,类外不可以访问

  struct 和 class 的区别:

    在 C++ 中 struct 和 class 唯一的区别就在于 默认的访问权限不同

      区别:struct 默认权限为公共、 class 默认权限为私有

二、对象的初始化和清理

  1、 构造函数:主要作用在于创建对象时为对象的成员属性赋值,构造函数由编译器自动调用,无需手动调用

      构造函数语法:类名(){}

        构造函数没有返回值不写void;函数名与类名相同;构造函数可以有参数,因此可以重载;程序会自动调用构造,且只调用一次;

    析构函数:主要作用在于对象销毁前系统自动调用,执行一些清理工作

      析构函数语法:~类名(){}

        析构函数没有返回值不写void;函数名与类名相同,且在类名前加 ~;析构函数不可以有参数,不会有重载;程序在销毁前会自动调用析构,且只会调用一次

  2、构造函数的分类及调用:

      按参数分:有参构造和无参构造

      按类型分:普通构造和拷贝构造

  3、拷贝构造函数调用时机

      C++中拷贝构造函数调用时机通常有三种情况

        使用一个已经创建完毕的对象来初始化一个新对象

        值传递的方式给函数参数传值

        以值方式返回局部对象

  4、构造函数调用规则

    默认情况下,c++ 编译器至少给一个类添加3个函数

      1、默认构造函数(无参,函数体为空)

      2、默认析构函数(无参,函数体为空)

      3、默认拷贝构造函数,对属性进行值拷贝

    

原文链接: https://www.cnblogs.com/evething-begins-with-choice/p/13042182.html

欢迎关注

微信关注下方公众号,第一时间获取干货硬货;公众号内回复【pdf】免费获取数百本计算机经典书籍;

也有高质量的技术群,里面有嵌入式、搜广推等BAT大佬

    C++ ------- 类和对象

原创文章受到原创版权保护。转载请注明出处:https://www.ccppcoding.com/archives/352774

非原创文章文中已经注明原地址,如有侵权,联系删除

关注公众号【高性能架构探索】,第一时间获取最新文章

转载文章受原作者版权保护。转载请注明原作者出处!

(0)
上一篇 2023年3月2日 上午7:43
下一篇 2023年3月2日 上午7:43

相关推荐