-
C++ string详解 C++字符串详解
所属栏目:[语言] 日期:2022-07-02 热度:122
C++ 大大增强了对字符串的支持,除了可以使用C风格的字符串,还可以使用内置的 string 类。string 类处理起字符串来会方便很多,完全可以代替C语言中的字符数组或字符串指针。 string 是 C++ 中常用的一个类,它非常重要,我们有必要在此单独讲解一下。 使[详细]
-
C++类和对象的总结 拿去做笔记吧
所属栏目:[语言] 日期:2022-07-02 热度:95
类的成员有成员变量和成员函数两种。 成员函数之间可以互相调用,成员函数内部可以访问成员变量。 私有成员只能在类的成员函数内部访问。默认情况下,class 类的成员是私有的,struct 类的成员是公有的。 可以用对象名.成员名、引用名.成员名、对象指针-成[详细]
-
C++引用10分钟入门教程
所属栏目:[语言] 日期:2022-07-02 热度:80
我们知道,参数的传递本质上是一次赋值的过程,赋值就是对内存进行拷贝。所谓内存拷贝,是指将一块内存上的数据复制到另一块内存上。 对于像 char、bool、int、float 等基本类型的数据,它们占用的内存往往只有几个字节,对它们进行内存拷贝非常快速。而数[详细]
-
C++继承和派生简明教程
所属栏目:[语言] 日期:2022-07-02 热度:78
C++ 中的继承是类与类之间的关系,是一个很简单很直观的概念,与现实世界中的继承类似,例如儿子继承父亲的财产。 继承(Inheritance)可以理解为一个类从另一个类获取成员变量和成员函数的过程。例如类 B 继承于类 A,那么 B 就拥有 A 的成员变量和成员函[详细]
-
C++三种继承方式
所属栏目:[语言] 日期:2022-07-02 热度:192
C++继承的一般语法为: class 派生类名:[继承方式] 基类名{ 派生类新增加的成员 }; 继承方式限定了基类成员在派生类中的访问权限,包括 public(公有的)、private(私有的)和 protected(受保护的)。此项是可选项,如果不写,默认为 private(成员变[详细]
-
C++继承时的名字遮蔽问题
所属栏目:[语言] 日期:2022-07-02 热度:71
如果派生类中的成员(包括成员变量和成员函数)和基类中的成员重名,那么就会遮蔽从基类继承过来的成员。所谓遮蔽,就是在派生类中使用该成员(包括在定义派生类时使用,也包括通过派生类对象访问该成员)时,实际上使用的是派生类新增的成员,而不是从基[详细]
-
C++基类和派生类的创建函数
所属栏目:[语言] 日期:2022-07-02 热度:190
前面我们说基类的成员函数可以被继承,可以通过派生类的对象访问,但这仅仅指的是普通的成员函数,类的构造函数不能被继承。构造函数不能被继承是有道理的,因为即使继承了,它的名字和派生类的名字也不一样,不能成为派生类的构造函数,当然更不能成为普[详细]
-
C++基类与派生类的析构函数
所属栏目:[语言] 日期:2022-07-02 热度:110
和构造函数类似,析构函数也不能被继承。与构造函数不同的是,在派生类的析构函数中不用显式地调用基类的析构函数,因为每个类只有一个析构函数,编译器知道如何选择,无需程序员干涉。 另外析构函数的执行顺序和构造函数的执行顺序也刚好相反: 创建派生[详细]
-
C++多继承 多重继承 细说
所属栏目:[语言] 日期:2022-07-02 热度:115
在前面的例子中,派生类都只有一个基类,称为单继承(Single Inheritance)。除此之外,C++也支持多继承(Multiple Inheritance),即一个派生类可以有两个或多个基类。 多继承容易让代码逻辑复杂、思路混乱,一直备受争议,中小型项目中较少使用,后来的[详细]
-
C++虚继承和虚基类解说
所属栏目:[语言] 日期:2022-07-02 热度:171
多继承(Multiple Inheritance)是指从多个直接基类中产生派生类的能力,多继承的派生类继承了所有父类的成员。尽管概念上非常简单,但是多个基类的相互交织可能会带来错综复杂的设计问题,命名冲突就是不可回避的一个。 多继承时很容易产生命名冲突,即使[详细]
-
C++虚继承时的构建函数
所属栏目:[语言] 日期:2022-07-02 热度:142
在虚继承中,虚基类是由最终的派生类初始化的,换句话说,最终派生类的构造函数必须要调用虚基类的构造函数。对最终的派生类来说,虚基类是间接基类,而不是直接基类。这跟普通继承不同,在普通继承中,派生类构造函数中只能调用直接基类的构造函数,不能[详细]
-
C++将派生类赋值给基类 向上变型
所属栏目:[语言] 日期:2022-07-02 热度:175
在 C/C++ 中经常会发生数据类型的转换,例如将 int 类型的数据赋值给 float 类型的变量时,编译器会先把 int 类型的数据转换为 float 类型再赋值;反过来,float 类型的数据在经过类型转换后也可以赋值给 int 类型的变量。 数据类型转换的前提是,编译器知[详细]
-
C++多态和虚函数迅速入门教学
所属栏目:[语言] 日期:2022-07-02 热度:117
在《C++将派生类赋值给基类(向上转型)》一节中讲到,基类的指针也可以指向派生类对象,请看下面的例子: #include iostream using namespace std; //基类People class People{ public: People(char *name, int age); void display(); protected: char *m[详细]
-
C++虚函数注意点以及构成多态的条件
所属栏目:[语言] 日期:2022-07-02 热度:57
C++ 虚函数对于多态具有决定性的作用,有虚函数才能构成多态。上节《C++多态和虚函数快速入门教程》我们已经介绍了虚函数的概念,这节我们来重点说一下虚函数的注意事项。 1) 只需要在虚函数的声明处加上 virtual 关键字,函数定义处可以加也可以不加。 2)[详细]
-
C++纯虚函数及抽象类详解
所属栏目:[语言] 日期:2022-07-02 热度:56
在C++中,可以将虚函数声明为纯虚函数,语法格式为: virtual 返回值类型 函数名 (函数参数) = 0; 纯虚函数没有函数体,只有函数声明,在虚函数声明的结尾加上=0,表明此函数为纯虚函数。 最后的=0并不表示函数返回值为0,它只起形式上的作用,告诉编译系[详细]
-
C++ typeid运算符 取得类型信息
所属栏目:[语言] 日期:2022-07-02 热度:74
typeid 运算符用来获取一个表达式的类型信息。类型信息对于编程语言非常重要,它描述了数据的各种属性: 对于基本类型(int、float 等C++内置类型)的数据,类型信息所包含的内容比较简单,主要是指数据的类型。 对于类类型的数据(也就是对象),类型信息[详细]
-
进制转换 二进制 八进制 十六进制 十进制之间的转换
所属栏目:[语言] 日期:2022-07-01 热度:169
对于基础薄弱的读者,本节的内容可能略显晦涩和枯燥,如果你觉得吃力,可以暂时跳过,基本不会影响后续章节的学习,等用到的时候再来阅读。 上节我们对二进制、八进制和十六进制进行了说明,本节重点讲解不同进制之间的转换,这在编程中经常会用到,尤其是[详细]
-
数据在内存中的存储 二进制形式存储
所属栏目:[语言] 日期:2022-07-01 热度:80
计算机要处理的信息是多种多样的,如数字、文字、符号、图形、音频、视频等,这些信息在人们的眼里是不同的。但对于计算机来说,它们在内存中都是一样的,都是以二进制的形式来表示。 要想学习编程,就必须了解二进制,它是计算机处理数据的基[详细]
-
载入内存 让程序运行起来
所属栏目:[语言] 日期:2022-07-01 热度:71
如果你的电脑上安装了QQ,你希望和好友聊天,会双击QQ图标,打开QQ软件,输入账号和密码,然后登录就可以了。 那么,QQ是怎么运行起来的呢? 首先,有一点你要明确,你安装的QQ软件是保存在硬盘中的。 双击QQ图标,操作系统就会知道你要运行这个软件,它会[详细]
-
什么是源文件
所属栏目:[语言] 日期:2022-07-01 热度:108
在开发软件的过程中,我们需要将编写好的代码(Code)保存到一个文件中,这样代码才不会丢失,才能够被编译器找到,才能最终变成可执行文件。这种用来保存代码的文件就叫做源文件(Source File)。 我们将在《编译和链接》一节中讲解编译器的概念。 每种编[详细]
-
C语言编译和链接细说 通俗易懂 深入本质
所属栏目:[语言] 日期:2022-07-01 热度:151
我们平时所说的程序,是指双击后就可以直接运行的程序,这样的程序被称为可执行程序(Executable Program)。在 Windows 下,可执行程序的后缀有.exe和.com(其中.exe比较常见);在类 UNIX 系统(Linux、Mac OS 等)下,可执行程序没有特定的后缀,系统根[详细]
-
ASCII编码 将英文存储到计算机
所属栏目:[语言] 日期:2022-07-01 热度:174
前面我们已经讲到,计算机是以二进制的形式来存储数据的,它只认识 0 和 1 两个数字,我们在屏幕上看到的文字,在存储之前都被转换成了二进制(0和1序列),在显示时也要根据二进制找到对应的字符。 可想而知,特定的文字必然对应着固定的二进制,否则在转[详细]
-
第一个C语言程序
所属栏目:[语言] 日期:2022-07-01 热度:118
我们有两种方式从计算机获得信息:一是看屏幕上的文字、图片、视频等,二是听从喇叭发出来的声音。让喇叭发出声音目前还比较麻烦,我们先来看看如何在屏幕上显示一些文字吧。 在屏幕上显示文字非常简单,只需要一个语句,例如,下面的代码会让屏幕显示出C[详细]
-
编程时请选择正确的输入法 严格区分中英文
所属栏目:[语言] 日期:2022-07-01 热度:57
计算机起源于美国,C语言、C++、Java、JavaScript 等很多流行的编程语言都是美国人发明的,所以在编写代码的时候必须使用英文半角输入法,尤其是标点符号,初学者一定要引起注意。 例如,上节我们使用 puts 语句在显示器上输出内容: puts(C语言中文网);[详细]
-
C语言编译器 C语言编程软件 完全攻略 包含所有平台
所属栏目:[语言] 日期:2022-07-01 热度:139
在上节《C语言编译和链接》中我们已经讲解了C语言编译器的概念,由于C语言的历史比较久,而且早期没有规范,整个计算机产业也都处于拓荒的年代,所以就涌现了很多款C语言编译器,它们各有特点,适用于不同的平台,本节就来给大家科普一下。 我们分两部分介[详细]