uacs2024

导航

2024年3月2日 #

C++ 多态

摘要: 原文 多态按字面的意思就是多种形态。当类之间存在层次结构,并且类之间是通过继承关联时,就会用到多态。 C++ 多态意味着调用成员函数时,会根据调用函数的对象的类型来执行不同的函数。 1 #include <iostream> 2 using namespace std; 3 class Shape 阅读全文

posted @ 2024-03-02 22:07 ᶜʸᵃⁿ 阅读(2) 评论(0) 推荐(0) 编辑

C++ 输入/输出运算符重载

摘要: C++ 能够使用流提取运算符 >> 和流插入运算符 << 来输入和输出内置的数据类型。您可以重载流提取运算符和流插入运算符来操作对象等用户自定义的数据类型。 在这里,有一点很重要,我们需要把运算符重载函数声明为类的友元函数,这样我们就能不用创建对象而直接调用函数。 下面的实例演示了如何重载提取运算符 阅读全文

posted @ 2024-03-02 21:28 ᶜʸᵃⁿ 阅读(4) 评论(0) 推荐(0) 编辑

C++ 关系运算符重载

摘要: C++ 语言支持各种关系运算符( < 、 > 、 <= 、 >= 、 == 等等),它们可用于比较 C++ 内置的数据类型。 您可以重载任何一个关系运算符,重载后的关系运算符可用于比较类的对象。 1 #include <iostream> 2 using namespace std; 3 4 cla 阅读全文

posted @ 2024-03-02 21:00 ᶜʸᵃⁿ 阅读(5) 评论(0) 推荐(0) 编辑

C++ 一元运算符重载

摘要: 一元运算符只对一个操作数进行操作,下面是一元运算符的实例: 递增运算符( ++ )和递减运算符( -- ) 一元减运算符,即负号( - ) 逻辑非运算符( ! ) 一元运算符通常出现在它们所操作的对象的左边,比如 !obj、-obj 和 ++obj,但有时它们也可以作为后缀,比如 obj++ 或 o 阅读全文

posted @ 2024-03-02 20:57 ᶜʸᵃⁿ 阅读(5) 评论(0) 推荐(0) 编辑

C++ 重载运算符和重载函数 二元运算符重载

摘要: C++ 允许在同一作用域中的某个函数和运算符指定多个定义,分别称为函数重载和运算符重载。 重载声明是指一个与之前已经在该作用域内声明过的函数或方法具有相同名称的声明,但是它们的参数列表和定义(实现)不相同。 当您调用一个重载函数或重载运算符时,编译器通过把您所使用的参数类型与定义中的参数类型进行比较 阅读全文

posted @ 2024-03-02 20:45 ᶜʸᵃⁿ 阅读(6) 评论(0) 推荐(0) 编辑

C++ 继承

摘要: 1 // 基类 2 class Animal { 3 // eat() 函数 4 // sleep() 函数 5 }; 6 7 8 //派生类 9 class Dog : public Animal { 10 // bark() 函数 11 }; 基类 & 派生类 一个类可以派生自多个类,这意味着, 阅读全文

posted @ 2024-03-02 18:02 ᶜʸᵃⁿ 阅读(2) 评论(0) 推荐(0) 编辑

C++ 类的静态成员

摘要: 原文 可以使用 static 关键字来把类成员定义为静态的。当我们声明类的成员为静态时,这意味着无论创建多少个类的对象,静态成员都只有一个副本。 静态成员在类的所有对象中是共享的。如果不存在其他的初始化语句,在创建第一个对象时,所有的静态数据都会被初始化为零。我们不能把静态成员的初始化放置在类的定义 阅读全文

posted @ 2024-03-02 17:07 ᶜʸᵃⁿ 阅读(12) 评论(0) 推荐(0) 编辑

C++ 指向类的指针

摘要: 原文 一个指向 C++ 类的指针与指向结构的指针类似,访问指向类的指针的成员,需要使用成员访问运算符 ->,就像访问指向结构的指针一样。与所有的指针一样,在使用指针之前,对指针进行初始化。 在 C++ 中,指向类的指针指向一个类的对象,与普通的指针相似,指向类的指针可以用于访问对象的成员变量和成员函 阅读全文

posted @ 2024-03-02 16:15 ᶜʸᵃⁿ 阅读(30) 评论(0) 推荐(0) 编辑

C++ 友元函数

摘要: 类的友元函数是定义在类外部,但有权访问类的所有私有(private)成员和保护(protected)成员。尽管友元函数的原型有在类的定义中出现过,但是友元函数并不是成员函数。 友元可以是一个函数,该函数被称为友元函数;友元也可以是一个类,该类被称为友元类,在这种情况下,整个类及其所有成员都是友元。 阅读全文

posted @ 2024-03-02 15:24 ᶜʸᵃⁿ 阅读(6) 评论(0) 推荐(0) 编辑

C++ 拷贝构造函数(初学有点难理解)

摘要: 拷贝构造函数是一种特殊的构造函数,它在创建对象时,是使用同一类中之前创建的对象来初始化新创建的对象。拷贝构造函数通常用于: 通过使用另一个同类型的对象来初始化新创建的对象。 复制对象把它作为参数传递给函数。 复制对象,并从函数返回这个对象。 如果在类中没有定义拷贝构造函数,编译器会自行定义一个。如果 阅读全文

posted @ 2024-03-02 14:44 ᶜʸᵃⁿ 阅读(6) 评论(0) 推荐(0) 编辑

C++ 类构造函数 & 析构函数

摘要: 带参数的构造函数 默认的构造函数没有任何参数,但如果需要,构造函数也可以带有参数。这样在创建对象时就会给对象赋初始值,如下面的例子所示: 1 #include <iostream> 2 using namespace std; 3 4 class Line 5 { 6 public: 7 void 阅读全文

posted @ 2024-03-02 13:45 ᶜʸᵃⁿ 阅读(3) 评论(0) 推荐(0) 编辑

C++ 类访问修饰符

摘要: 私有(private)成员 成员和类的默认访问修饰符是 private,如果没有使用任何访问修饰符,类的成员将被假定为私有成员。私有成员变量或函数在类的外部是不可访问的,甚至是不可查看的。只有类和友元函数可以访问私有成员。 实际操作中,我们一般会在私有区域定义数据,在公有区域定义相关的函数,以便在类 阅读全文

posted @ 2024-03-02 10:55 ᶜʸᵃⁿ 阅读(6) 评论(0) 推荐(0) 编辑

inline 是一种用于实现的关键字

摘要: 关键字 inline 必须与函数定义体放在一起才能使函数成为内联,仅将inline 放在函数声明前面不起任何作用。 如下风格的函数 Foo 不能成为内联函数: inline void Foo(int x, int y); // inline 仅与函数声明放在一起 void Foo(int x, in 阅读全文

posted @ 2024-03-02 10:40 ᶜʸᵃⁿ 阅读(2) 评论(0) 推荐(0) 编辑