江河入海,知识涌动,这是我参与江海计划的第10篇。
文章目录
C++类与对象————详细入门指南
前言
1. 类的定义
1.1 类定义的基本格式
示例代码
解释
1.2 访问限定符
示例代码
解释
1.3 类域
示例代码
解释
1.4 成员命名规范
常见的命名规定:
实例:
扩展:
1.5 class与struct的默认访问权限
示例:
2. 类的实例化
2.1类实例化的概念
示例代码
解释
2.2 对象的大小与存储
示例代码
解释
2.3 对象大小:空类的情况
空类对象的大小
为什么空类对象占1字节?
示例代码:空类的对象大小
输出结果:
解释:
括展:含有静态成员的类
结论:
3. this指针
3.1 什么是this指针
this指针的内部机制
3.2 示例代码
解释
括展解释:this指针使用的情况?
3.3 this指针的测试题
测试题1:this指针的基本行为
问题描述:
解释:
正确答案 C.正常运行
测试题2:this指针与成员变量的访问
问题描述:
解释:
正确答案: B.运行崩溃
详细解释:为什么不是空指针访问
测试题3:this指针的存储位置
4. C++和C语言实现Stack的对比
4.1 C语言实现Stack
C语言实现Stack的代码示例
C语言实现Stack的详细解释
4.2 C++实现Stack
C++实现Stack的代码示例
C++实现Stack的详细解释
扩展解释:构造函数和析构函数
4.3 C++和C语言实现Stack的对比总结
5. 内存对齐
5.1 内存对齐规则
5.2 示例代码
解释
扩展解释:为什么存在内存对齐?
5.3 内存对齐的影响
解释
C++类与对象————详细入门指南
前言
1. 欢迎讨论:如果你在学习过程中有任何问题或想法,欢迎在评论区留言,我们一起交流学习。你的支持是我继续创作的动力!
2. 点赞、收藏与分享:觉得这篇文章对你有帮助!别忘了点赞、收藏并分享给更多的小伙伴哦!你们的支持是我不断进步的动力!
3. 分享给更多人:如果你觉得这篇文章对你有帮助,欢迎分享给更多对C++感兴趣的朋友,让我们一起进步!
1.类的定义
在C++中,类是面向对象编程的基础概念之一。类通过将数据和行为封装在一起,模拟现实世界中的实体。通过类,我们可以定义对象的属性(成员变量)和行为(成员函数)。
1.1 类定义的基本格式
类的定义使用class关键字,后面跟上类的名称。在C++中,类体需要用大括号{}包裹,并在类定义结束时加上分号;。类中的内容为类的成员,包括:
. 成员变量:即类的属性:存储类的状态。
. 成员函数:即类的方法:定义类的行为。
示例代码
#include<iostream>
using namespace std;
class Stack
{
public:
// 成员函数
void Init(int n = 4)
{
array = (int*)malloc(sizeof(int) * n);
if (nullptr == array)
{
perror("malloc申请空间失败");
return;
}
capacity = n;
top = 0;
}
void Push(int x)
{
// ...扩容
array[top++] = x;
}
int Top()
{
assert(top > 0);
return array[top - 1];
}
void Destroy()
{
free(array);
array = nullptr;
top = capacity = 0;
}
private:
// 成员变量
int* array;
size_t capacity;
size_t top;
}; // 分号不能省略
int main()
{
Stack st;
st.Init();
st.Push(1);
st.Push(2);
cout << st.Top() << endl;
st.Destroy();
return 0;
}
解释
. class: 定义类的关键字
. Stack: 类的名称