自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(11)
  • 收藏
  • 关注

原创 类和对象- C++对象模型和this指针- 成员变量和成员函数分开存储

成员变量和成员函数分开存储在C++中,类内的成员变量和成员函数分开存储只有非静态成员变量才属于类的对象上空对象占用内存空间class Person {};void test01() { Person p; cout << "sizeof p = " << sizeof(p) << endl;}运行结果:为什么结果是1,而不是0或者其他的数字?加入我们有两个空对象p1,p2,而他们并不占用内存空间(即占用内存空间为0),那么就会产生混

2022-02-26 09:56:13 455

原创 类和对象-对象的初始化和清理-静态成员函数

静态成员函数所有对象共享同一个函数静态成员函数只能访问静态成员变量所有对象共享同一个函数class Person {public: static void func() { cout << "static void func调用" << endl; }};//有两种访问方式void test01() { //1、通过对象访问 Person p; p.func(); //2、通过类名访问 Person::func();}运行结果

2022-02-24 21:10:56 129

原创 类和对象-对象的初始化和清理-静态成员变量

静态成员就是在成员变量和成员函数前加上关键字static,称为静态成员静态成员变量特点所有对象共享同一份数据在编译阶段分配内存类内声明,类外初始化类内声明,类外初始化class Person {public: //1、所有对象都共享同一份数据 //2、编译阶段就分配内存 //3、类内声明,类外初始化 static int m_A;//类内声明};void test01() { Person p1; cout << "m_A = " << p1.m_

2022-02-18 13:45:07 617

原创 类和对象-对象的初始化和清理-类对象作为类成员

C++类中的成员可以是另一个类的对象,我们称该成员为 对象成员#include<iostream>#include<string>using namespace std;//类对象作为类成员//手机类class Phone {public: //手机品牌名称 string m_PName; Phone(string pName) { cout << "Phone的构造函数调用" << endl; m_PName = pNam

2022-02-17 10:35:44 284

原创 类和对象-对象的初始化和清理-初始化列表

初始化列表作用:C++提供了初始化列表语法,用来初始化属性语法:构造函数( ):属性1(值1),属性2(值2)…{ }#include<iostream>using namespace std;//初始化列表class Person {public: //传统初始化操作 /*Person(int a, int b, int c) { m_A = a; m_B = b; m_C = c; }*/ //初始化列表初始化属性 Person(int a,int

2022-02-15 14:26:52 354

原创 类和对象-对象的初始化和清理-深拷贝与浅拷贝

深拷贝与浅拷贝浅拷贝:简单的赋值拷贝操作深拷贝:在堆区重新申请空间,进行拷贝操作#include<iostream>using namespace std;//深拷贝与浅拷贝class Person {public: Person() { cout << "Person的默认构造函数调用" << endl; } Person(int age , int height) { cout << "Person的有参构造函数调用" &

2022-02-15 10:13:16 101

原创 类和对象-对象的初始化和清理-构造函数调用规则

默认情况下,c++编译器至少给一个类添加3个函数默认构造函数(无参,函数体为空)默认析构函数(无参,函数体为空)默认拷贝构造函数,对属性进行值拷贝构造函数调用规则如下:如果用户定义有参构造函数,c++不在提供默认无参构造,但是会提供默认拷贝构造如果用户定义拷贝构造函数,c++不会再提供其他构造函数#include<iostream>using namespace std;//构造函数的调用规则//1、创建一个类,C++编译器会给每个类都添加至少3个函数//默认构造

2022-02-14 11:16:37 156

原创 类和对象-对象的初始化和清理-拷贝构造函数调用时机

C++中拷贝构造函数调用时机通常有三种情况使用一个已经创建完毕的对象来初始化一个新对象值传递的方式给函数参数传值以值方式返回局部对象#include<iostream>using namespace std;//拷贝构造函数调用时机class Person {public: Person() { cout << "Person默认构造函数的调用" << endl; } Person(int age) { cout <<

2022-02-13 10:28:22 466

原创 类和对象-对象的初始化和清理-构造函数的分类及调用

两种分类方式:按参数分为: 有参构造和无参构造按类型分为: 普通构造和拷贝构造三种调用方式:括号法显示法隐式转换法#include<iostream>using namespace std;//1、构造函数的分类及调用//分类// 按照参数分类 无参构造(默认构造) 和 有参构造// 按照类型分类 普通构造 和 拷贝构造class Person {public: //构造函数 Person() { cout << "Person的无参

2022-02-12 10:38:56 79

原创 类和对象-对象的初始化和清理-构造函数与析构函数

c++---构造函数与析构函数

2022-02-11 16:01:10 133

原创 学习C++之旅

本人大学在读,在B站根据黑马程序员的视频学习C++,希望与大家一同进步,编程小白,希望大家多指教,不喜勿喷,十分感谢。

2022-02-11 15:57:51 295

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除