![](https://img-blog.csdnimg.cn/20201014180756918.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
笔记
D~Mint
C/C++ 选手
展开
-
C++进阶Day42
下面我们看到Person是父类,也称作基类。Student是子类,也称作派生类。,体现了由简单到复杂的认知过程。以前我们接触的复用都是函数复用,(inheritance)机制是面向对象程序设计。,增加功能,这样产生新的类,称派生类。的最重要的手段,它允许程序员在。3.继承基类成员访问方式的变化。2.继承关系和访问限定符。原创 2024-03-06 19:55:31 · 370 阅读 · 0 评论 -
C++初阶Day41
在C语言中,如果想要将一个整形变量的数据转化为字符串格式,如何去做?使用itoa()函数使用sprintf()函数但是两个函数在转化时,都得需要先给出保存结果的空间,那空间要给多大呢,就不太好界定,而且转化格式不匹配时,可能还会得到错误的结果甚至程序崩溃。在C++中,可以使用stringstream类对象来避开此问题。在程序中如果想要使用stringstream,必须要包含头文件。原创 2024-03-06 19:24:52 · 324 阅读 · 0 评论 -
C++初阶Day40
C++根据文件内容的数据格式分为二进制文件和文本文件。原创 2024-03-06 18:29:40 · 465 阅读 · 0 评论 -
C++初阶Day39
C语言中我们用到的最频繁的输入输出方式就是scanf ()与printf()。scanf(): 从标准输入设备(键盘)读取数据,并将值存放在变量中。printf(): 将指定的文字/字符串输出到标准输出设备(屏幕)。注意宽度输出和精度输出控制。C语言借助了相应的缓冲区来进行输入与输出。1.可以屏蔽掉低级I/O的实现,低级I/O的实现依赖操作系统本身内核的实现,所以如果能够屏蔽这部分的差异,可以很容易写出可移植的程序。原创 2024-03-06 18:19:50 · 298 阅读 · 0 评论 -
C++初阶Day38
模板复用了代码,节省资源,更快的迭代开发,C++的标准模板库(STL)因此而产生增强了代码的灵活性原创 2024-03-06 16:59:35 · 328 阅读 · 0 评论 -
C++初阶Day37
什么是分离编译?一个程序(项目)由若干个源文件共同实现,而每个源文件单独编译生成目标文件,最后将所有目标文件链接起来形成单一的可执行文件的过程称为分离编译模式。原创 2024-03-06 16:55:20 · 536 阅读 · 0 评论 -
C++初阶Day36
此时,就需要对模板进行特化。即:在原模板类的基础上,针对特殊类型所进行特殊化的实现方式。类型,为了实现简单通常都是。注意:一般情况下如果。将模板参数类表中的一。原创 2024-03-06 16:18:46 · 834 阅读 · 0 评论 -
C++初阶Day35
模板参数分类类型形参与非类型形参。,在类(函数)模板中可将该参数当成。作为类(函数)模板的一个。原创 2024-03-02 10:13:07 · 319 阅读 · 0 评论 -
C++初阶Day34
【代码】C++初阶Day34。原创 2024-02-27 22:00:29 · 303 阅读 · 0 评论 -
C++初阶Day33
对于非模板函数和同名函数模板,如果其他条件都相同,在调动时会优先调用非模板函数而不会从该模板产生出一个实例。如果模板可以产生一个具有更好匹配的函数, 那么将选择模板。一个非模板函数可以和一个同名的函数模板同时存在,而且该函数模板还可以被实例化为这个非模板函数。模板函数不允许自动类型转换,但普通函数可以进行自动类型转换。原创 2024-02-27 21:56:39 · 322 阅读 · 0 评论 -
C++初阶Day32
用不同类型的参数使用函数模板时,称为函数模板的实例化。模板参数实例化分为:隐式实例化和显式实例化。原创 2024-02-27 21:52:36 · 450 阅读 · 0 评论 -
C++初阶Day31
如何实现一个通用的交换函数呢?原创 2024-02-26 13:36:48 · 461 阅读 · 0 评论 -
C++初阶Day30
都是从堆上申请空间,并且需要用户手动释放。原创 2024-02-25 15:35:11 · 347 阅读 · 0 评论 -
C++初阶Day29
new不需要进行断言,操作系统会进行抛出异常或者有回调函数进行回调。原创 2024-02-25 15:32:15 · 338 阅读 · 0 评论 -
C++初阶Day28
1.对已创建的空间进行操作。原创 2024-02-25 15:29:15 · 291 阅读 · 0 评论 -
C++初阶Day27
1.new是操作符,可对申请空间和释放空间的过程进行重载,调用构造函数和析构函数是自动调用的,delete同理。若在类内重载会优先调用类内的,操作系统对new操作符的重载是全局的。2.操作符new,只能申请空间和释放空间,不会调用构造函数和析构函数。原创 2024-02-25 15:22:31 · 359 阅读 · 0 评论 -
C++初阶Day26
malloc/calloc/realloc申请的空间与new申请的空间有对应类似cookie的描述控制,前者只能由free识别,后者只能由delete识别。1.malloc/calloc/realloc申请的空间只能由free释放,new申请的空间只能由delete释放。原创 2024-02-25 15:20:01 · 365 阅读 · 0 评论 -
C++初阶Day25
【代码】C++初阶Day25。原创 2024-02-25 15:14:37 · 347 阅读 · 0 评论 -
C++初阶Day24
内存管理原创 2024-02-25 15:05:50 · 366 阅读 · 0 评论 -
C++初阶Day23
【代码】C++初阶Day23。原创 2024-02-25 15:02:11 · 332 阅读 · 0 评论 -
C++初阶Day22
【代码】C++初阶Day22。原创 2024-02-25 14:55:10 · 298 阅读 · 0 评论 -
C++初阶Day21
浅拷贝节省空间但有时会导致double free,深拷贝可以避免double free但可能造成空间浪费。1.计数器若使用静态变量计数,会导致需要独立使用另一个空间的对象,加入了共享空间计数,不符合使用实际。引用技术:给共享的空间引入一个计数器。原创 2024-02-25 14:53:02 · 327 阅读 · 0 评论 -
C++初阶Day20
1.malloc、calloc区别:malloc只申请空间不会初始化,calloc申请空间,并给申请的空间初始化。malloc、calloc传递参数有不同。New申请空间后,还会调用构造函数进行初始化,malloc、calloc、realloc没有;Delete在释放空间之前,会调用析构函数。2.New申请的空间只能由delete释放;malloc、calloc、realloc申请的空间只能由Free进行释放。2.Realloc:重新申请空间。原创 2024-02-25 14:46:21 · 286 阅读 · 0 评论 -
C++初阶Day19
引用返回在此处是错误用法,tmp是fun函数的局部变量,脱离fun函数tmp就会被释放,b被给了一个已经释放的空间。引用返回,返回时创建变量;省去了给临时空间的拷贝,临空间给b的拷贝,让创建的变量空间直接给b。引用传值可以省去一次给参数赋值的拷贝构造。返回时创建变量,省去给临时空间的拷贝。原创 2024-02-25 14:40:50 · 361 阅读 · 0 评论 -
C++初阶Day18
临时空间的地址给b(就省去零时空间给b进行一次拷贝构造),零时空间先不用释放了,让b释放。编译器将临时空间的地址给了b。原创 2024-02-25 14:34:14 · 305 阅读 · 0 评论 -
C++初阶Day17
1.✪内部类就是外部类的友元类,内部类可以通过外部类的对象参数来访问外部类中的所。定义在另一个类的内部的类就叫做内部类。内部类是一个独立的类,不属于外部类,更不能通过外部类的对象去调用内部类。外部类对内部类没有任何优越的访问权限。2.✪外部类不是内部类的友元。原创 2024-02-25 14:30:38 · 335 阅读 · 0 评论 -
C++初阶Day15
构造函数体中的赋值语句只能将其称作为赋初值,而不能称作初始化。因为初始化只能初始化一次,而构造函数体内可以多次赋值。原创 2024-02-24 22:36:05 · 332 阅读 · 0 评论 -
C++初阶Day14
现在我们尝试去重载operator原创 2024-02-24 21:56:18 · 344 阅读 · 0 评论 -
C++初阶Day13
【代码】C++初阶Day13。原创 2024-02-24 21:50:52 · 333 阅读 · 0 评论 -
C++初阶Day12
【代码】C++初阶Day12。原创 2024-02-24 21:46:09 · 349 阅读 · 0 评论 -
C++初阶Day11
【代码】C++初阶Day11。原创 2024-02-24 21:42:53 · 303 阅读 · 0 评论 -
C++初阶Day10
operator这五个运算符不可重载。原创 2024-02-24 21:39:06 · 350 阅读 · 0 评论 -
C++初阶Day9
对象:指针。原创 2024-02-24 21:33:06 · 346 阅读 · 0 评论 -
C++初阶Day8
1.const成员函数(常方法),const修饰类的成员函数,实际修饰该成员函数隐含的this指针(const 类名。不能,const成员函数表明当前对象成员不可修改,调用对其成员可进行修改的函数,前后相悖。7.常方法不可修改当前对象的数据,常方法可以访问该类中的常成员和普通成员;不能,成员不可进行修改的对象调用对其成员可进行修改的函数,前后相悖。4. const成员函数内可以调用其它的非const成员函数吗?5. 非const成员函数内可以调用其它的const成员函数吗?const this),让。原创 2024-02-24 21:26:39 · 335 阅读 · 0 评论 -
C++初阶Day7
1.~ 类名()2.无参数,无返回值;不可重载3.若无显示定义析构函数,系统会自动生成默认析构函数4.对象生命周期结束时,C++编译系统自动调用析构函数5.作用:默认的析构函数对自定义类型成员调用它的析构函数析构函数完成类的一些资源清理工作,而不是完成对象的销毁。原创 2024-02-24 21:25:02 · 360 阅读 · 0 评论 -
C++初阶Day6
④每个类默认构造函数(默认构造函数:系统自动生成的构造函数、无参构造函数、全缺省构造函数)只能有一个。{ B(){}//默认构造函数对自定义类型成员调用它的默认成员函数,即将a.m_i=10;对象实例化时编译器自动调用,该对象只会调用一次;③若显示定义了构造函数,编译器就不会再生成默认的无参构造函数。即定义了有参无缺省构造函数,实例化对象初始化时要给参数。②作用:对象数据的初始化,而非开辟构造对象空间。⑥成员变量命名风格:一般类成员数据:m_变量名。原创 2024-02-24 21:20:10 · 329 阅读 · 0 评论 -
C++初阶Day5
类的成员函数默认隐藏了一个参数(即this指针),当对象调用成员函时会将当前对象的地址传入给this指针。①this指针不是对象所有的,只有当对象调用成员函数时才会有this指针。类的不同对象共用同一份成员函数,同样函数如何知道修改的数据是不同对象的?①在实例化对象时默认调用,该对象只会调用一次构造函数。①构造函数的一种,对象实例化时被另一个对象赋值。两个已经实例化的对象,一个对象赋给另一个对象。①对象退出生存域时,默认调用析构函数。②析构函数不可重载。原创 2024-02-24 21:14:25 · 385 阅读 · 0 评论 -
C++初阶Day4
空类大小是1字节,类的大小与结构体大小(按数据中最大类型大小与默认对齐数取最小)的整数倍对齐(VS中默认对齐数为8字节);③私有成员通过公有方法访问(类中的函数称为成员函数或方法,类中方法默认是内联函数)。类的大小只与类的成员数据的大小数量有关,与成员函数的大小和数量无关。④同一个类的不同对象有各自的成员数据,而共用同一份成员函数。②C++中类的成员默认私有;结构体的成员默认公有。①只有公有成员类外可以直接访问,私有、保护不是。C++基于面向对象/ Java完全面向对象。int 型大小是4字节;原创 2024-02-24 21:08:02 · 323 阅读 · 0 评论 -
C++初阶Day3
NULL:宏·,不同系统定义值可能不同。C++11:nullptr 空指针类型。C++98:NULL一般看成整形常量。struct:默认数据成员公有。私有、保护:对象不可直接访问。class:默认数据成员私有。数据安全:公有、私有、保护。C结构体中不能定义函数。C++:基于面向对象。原创 2024-02-24 20:54:40 · 324 阅读 · 0 评论 -
C++初阶Day2
其空间存放变量她址。原创 2024-02-24 20:44:17 · 374 阅读 · 0 评论