
C++
文章平均质量分 92
学习记录
星*湖
这个作者很懒,什么都没留下…
展开
-
C++:异常处理
异常处理指让一个函数在发现自己无法处理错误时抛出一个异常,并由其调用者可以直接或间接处理这个错误。异常处理被用来处理同步错误。异常处理通常用于发现错误的部分与处理错误的部分不在同一位置(不同范围)时,与用户进行交互式对话的程序不饿能用异常处理来处理输入错误。异常处理特别适合用于程序无法恢复但又需要提供有序清理,以使程序可以正常结束的情况。异常处理不仅提供了程序的容错性,还提供了各种捕获异常的方法。原创 2024-02-15 15:35:42 · 985 阅读 · 0 评论 -
C++:输入流/输出流
在C++中,除系统提供的预定义操纵符之外,还允许用户定义操纵符,便于控制一些频繁使用的格式操作,使格式控制更加方便。ostream &自定义输出操纵符算子函数名(ostream& stream){return stream;istream &自定义输出操纵符算子函数名(istream& stream){return stream;当实现一个类的类型时,有时需要这个类支持输入和输出的操作,以便可以将类对象嵌入输入或输出流中。对于用户自定义的数据类型的输入/输出,可以通过重载>>运算符和<<运算符实现。原创 2024-02-02 21:33:13 · 1947 阅读 · 0 评论 -
C++:模板
函数重载是指在相同的函数名下,能够实现不同操作。系统根据参数的类型或参数个数的不同区分这些重载的函数。这样虽然很方便,但是出现了大量的代码冗余。该如何解决这个问题呢?C++提供了模板。模板时类型参数化的工具。所谓类型参数化就是指把类型定义为参数,当参数实例化时,可以指定不同的数据类型,从而真正实现代码的可重用性。模板分为函数模板和类模板,他们分别允许用户构造模板函数和模板类。原创 2024-01-27 22:18:57 · 946 阅读 · 0 评论 -
C++:组合、继承与多态
class 基类名virtual 返回值类型 将要在派生类中重载的函数名(参数列表);例如,用虚函数修改上例class Apublic:public:public:i.play();tune(b);C c;tune(c);A* p = &b;tune(*p);p = &c;tune(*p);A a;tune(a);return 0;原创 2024-01-26 22:20:05 · 1205 阅读 · 0 评论 -
C++:运算符重载
C++规定,当不同类型的数据进行运算时,需先将数据转换成同一类型,然后才可以进行运算。数据的类型转换可以通过两种转换形式完成:一种是隐式类型转换;另一种是显式类型转换。隐式类型转换当执行赋值表达式V=E时,若V和E的类型不一致,则将E先转换为V的类型后再赋值。。当两个操作数类型不一致时,运算之前将级别低的自动转换为级别高的,然后再进行运算。显式类型转换显示类型转换有以下两种方式。1. 强制转换法:(类型名)表达式;2.函数法:类型名(表达式)。原创 2024-01-16 22:36:40 · 1496 阅读 · 0 评论 -
C++:常量
使用const的好处是允许指定一种语义上的约束,即某种对象不能被修改,且由编译器具体实施这种约束。修饰普通变量,时期不能被随意修改【注意】1.C++中的const为内部连接,即由const定义的常量仅在被定义的文件中才能看见,除非使用extern。一般情况下,编译器不为const分配空间(而extern则强制分配空间)。2. 当定义一个常量(const)时,必须进行初始化,即赋初值给它,除非已经用extern最清楚说明。可以使用const修饰数组,表示“常”数组,即数组的值不能被修改。例如。原创 2024-01-10 20:39:28 · 1069 阅读 · 0 评论 -
C++:函数
C++的每个程序至少有一个函数,即主函数main(),函数也是类的方法的实现手段。C++的函数包括两类:预定于函数和用户自定义函数。函数的定义格式为:<返回值类型><函数名>(<参数列表>)<函数体>其中,<返回值类型>实值函数返回值的数据类型,可以是任意一种基本数据类型或用户自定义数据类型,以及类类型。<函数名>是给函数指定的名字,函数名应遵循标识符的命名规定。<参数列表>是指参数的个数、名称和类型,函数定义中的参数成为形参。<函数体>实值函数完成的功能,由说明语句和执行语句组成。在C++语言中,函数的参原创 2023-08-24 17:34:26 · 3107 阅读 · 0 评论 -
C++:类与对象
class 类名 {public :数据成员或成员函数 protected : 数据成员或成员函数 private :数据成员或成员函数 };类名class是声明类的关键字,类名是标识符,且在其作用域内必须是唯一的。注:C++规定,标识符以字母(大小写均可,但区分大小写)或下划线开头,后面跟0或多个有字母、数字字符或下划线组成的字符串。成员说明类包括两类成员:一类是代表对象属性的数据成员;另一类是实现对象行为的成员函数。成员函数的定义不仅仅可以与声明同时在类内完成,也可以在类外完成。原创 2023-08-16 23:27:17 · 289 阅读 · 0 评论 -
C/C++
宏定义 #defineconst 常量宏定义,相当于字符替换常量声明预处理器处理编译器处理无类型安全检查有类型安全检查不分配内存要分配内存存储在代码段存储在数据段可通过 #undef 取消不可取消方法:将析构函数设置为私有原因:C++ 是静态绑定语言,编译器管理栈上对象的生命周期,编译器在为类对象分配栈空间时,会先检查类的析构函数的访问性。若析构函数不可访问,则不能在栈上创建对象。原创 2023-08-13 20:13:20 · 258 阅读 · 0 评论