C++笔记_类和对象_类的定义_类和对象

本文深入探讨了面向对象编程的核心概念,包括类和对象的定义、封装、继承和多态。特别强调了C++中class和struct的区别,以及如何在内存中存储结构体类型变量和类成员函数的默认访问权限。此外,还详细解释了类的大小计算,特别是当类仅包含成员函数而无数据成员时的情况。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

类的定义

类和对象

将数据和操作绑定到一起,并加上访问控制,这在面向对象中称为封装。

对象是数据和操作的封装体;数据描述的是对象的属性,操作描述的是对象的行为。

对象是客观事物的抽象,类是一组具有相同属性和行为的对象的抽象,对象又称为类的实例。


在C++中,类是一种数据类型,对象是这种类型的变量。

C++引入了一个关键字class来定义类。

class和struct定义的类区别:如果class的成员没有设置访问限定符,则默认为private。而struct 成员的默认访问级别为 public 。


结构体类型的变量 在内存中是逐个成员依次存储的,整个变量占据内存的大小是所有成员的大小之和。

每个对象都有自己的数据成员,类的成员函数定义并不在各个对象中存储,而是整个类存储一份。


如果一个类只有成员函数而没有数据成员,该类的对象大小至少是1。因为 面向对象的一个重要特性就是 对象具有本体,每个对象都是唯一可分的,每个对象都有唯一的存储地址。


union关键字也可以用来定义类,和struct一样,其成员函数的默认访问权限是public,但是其同一时间只有一个数据成员有效。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值