C++
文章平均质量分 66
DT31
一枚梦想月入百万的小穷鬼
展开
-
new和malloc
需要注意的是,如果使用"new"关键字分配内存空间,则需要使用"delete"关键字释放内存空间;如果使用"malloc"函数分配内存空间,则需要使用"free"函数释放内存空间。"malloc"函数:在C语言中,"malloc"函数用于动态分配内存空间。在上面的例子中,"ptr"指向了新分配的int类型的内存空间。"new"关键字:在C++中,"new"关键字用于在堆上动态分配内存空间。"new"和"malloc"都是在C++和C语言中用于动态分配内存空间的关键字/函数。类型的指针,需要进行类型转换。原创 2024-08-16 13:25:38 · 435 阅读 · 0 评论 -
C++ 的泛型编程
这个思想其实有两个层面,1、编写与数据类型无关的代码;2、使用模版元;原创 2024-07-15 14:33:37 · 755 阅读 · 0 评论 -
自增减运算符
+ 自增 1, --自减 1单独使用,前缀后缀没区别;非单独使用:前缀,先+1、-1,再用;后缀,先用,再+1、-1只适用变量,不能用于常量、表达式。优先级,高于算数、比较、赋值。后缀高于前缀。原创 2024-07-11 16:15:17 · 293 阅读 · 0 评论 -
子类继承父类的属性和方法
继承允许我们创建一个新的类(子类),它继承另一个类(父类)的属性和方法。这使得代码重用和扩展变得更加容易。在Java中,子类可以继承父类的构造方法。当子类创建对象时,会自动调用父类的构造方法来初始化从父类继承的成员变量和方法。子类可以通过super关键字来调用父类的构造方法。在上面的例子中,Animal类有一个带有一个参数的构造方法,它接受一个name(名字)参数并将其赋值给name成员变量。Dog类继承Animal类,并新增了一个age(年龄)成员变量。原创 2024-07-11 10:58:12 · 927 阅读 · 0 评论 -
多态 C++中的多态
多态是OOP的第三大特性之一,它允许我们使用父类类型的引用来引用子类对象,并在运行时根据对象的实际类型来执行相应的方法。这通常通过虚函数和纯虚函数来实现。C++中的多态主要通过函数重载(Overloading)、函数覆盖(Overriding)以及动态绑定(Dynamic Binding)等机制实现。这些机制允许我们使用相同的函数名来执行不同的操作,或者根据对象的实际类型来调用不同的函数实现。下面我将分别解释重载、覆盖和隐藏的原理。原创 2024-07-11 10:24:04 · 795 阅读 · 0 评论 -
封装与数据隐藏
封装是OOP的核心概念之一,它强调将数据和操作数据的方法捆绑在一起,形成一个个独立的对象。封装有助于隐藏对象的内部状态和实现细节,仅通过对象提供的公共接口与外界进行交互。构造一个类,把对象的属性封装起来,同时提供一些可以被外界访问属性的方法。可以使用Python中的类来实现。成员)来访问和操作对象,而无法直接访问对象的内部状态。这样,类的用户就只能通过类的公共接口(即。方法供外界访问和修改这些属性。属性前加上了一个下划线。,表示这些属性是私有的,提醒外界不要直接访问。在C++中,我们通过将类的成员设置为。原创 2024-07-11 10:09:35 · 175 阅读 · 0 评论 -
友元与组合
友元是一种允许一个类或函数访问另一个类的私有(private)和保护(protected)成员的方式。通过友元,我们可以打破封装性以允许某些特定的类或函数访问类的私有成员。通过组合,我们可以创建更复杂的类,这些类由其他类的对象组成,从而实现代码的重用和模块化。组合是一种“有一个”的关系,表示一个类的对象包含另一个类的对象。通过组合,我们可以将现有的类组合成更复杂的类,实现代码的重用和模块化。在C++中,友元(Friend)和组合(Composition)是两个不同的概念,但它们都涉及到类之间的关系。原创 2024-07-11 09:57:21 · 232 阅读 · 0 评论 -
this指针
指针只能在类的成员函数中使用,且它是一个隐式的指针,不需要显式声明即可使用。它主要用于类的成员函数内部,通过它可以访问到调用该成员函数的对象的所有成员变量和成员函数。这对于静态成员函数以外的情况尤为重要,因为静态成员函数不接受任何参数,因此无法直接访问对象的非静态成员。:在一般的编译环境中,只要打出this,后面会自动列举所有成员变量和函数,便于我找到需要的那个成员。指针可以用来返回对象的自引用,这在处理复杂的数据结构或者进行对象间的复制操作时非常有用。:在某些情况下,如果成员变量与局部变量同名,使用。原创 2024-07-11 09:49:57 · 304 阅读 · 0 评论 -
struct与class
1. 结构表示如点、矩形和颜色这样的轻量对象,例如,如果声明一个含有 1000 个点对象的数组,则将为引用每个对象分配附加的内存。则通常被用来表示一个对象,它包含数据(属性)和行为(方法),并且数据的访问通常是被限制的,即数据是私有的,通过公开的接口(即方法)进行访问和修改。在C++中的区别主要在于默认访问修饰符和编程习惯上,但在功能和使用上它们是相似的,都是用来定义自定义数据类型的工具。通常被用来表示一个数据的集合,比如点(包含x和y坐标)、日期(包含年、月、日)等,这些数据的成员一般都是公开的。原创 2024-07-11 09:43:40 · 215 阅读 · 0 评论