C++学习
文章平均质量分 96
记录C++学习过程笔记
尘缘里的记忆
记录学习、工作中的一些情况
展开
-
C与C++相互调用注意事项
1. C如何调用CPP代码在C中如何调用C++函数的问题,简单回答是将函数用extern "C"声明; 然后C代码中不要include C++的头文件, 而采用直接在C中增加函数声明的方式;/*C++ code*/extern "C" void f(int);void f(int i){// your code}/*C code*/void f(int); // 不引入, 而只是直接声明void cc(int i){f(i); //调用// other code}如果转载 2021-10-13 17:36:10 · 1547 阅读 · 0 评论 -
十、C++ STL教程、标准库、有用资源、实例
一、C++ STL 教程在前面的章节中,我们已经学习了 C++ 模板的概念。C++ STL(标准模板库)是一套功能强大的 C++ 模板类,提供了通用的模板类和函数,这些模板类和函数可以实现多种流行和常用的算法和数据结构,如向量、链表、队列、栈。C++ 标准模板库的核心包括以下三个组件:组件描述容器(Containers)容器是用来管理某一类对象的集合。C++ 提供了各种不同类型的容器,比如 deque、list、vector、map 等。算法(Algorithms)算法作原创 2021-10-10 17:44:01 · 438 阅读 · 0 评论 -
九、C++信号处理、多线程、Web编程(简述)
一、C++ 信号处理信号是由操作系统传给进程的中断,会提早终止一个程序。在 UNIX、LINUX、Mac OS X 或 Windows 系统上,可以通过按 Ctrl+C 产生中断。有些信号不能被程序捕获,但是下表所列信号可以在程序中捕获,并可以基于信号采取适当的动作。这些信号是定义在 C++ 头文件 中。信号描述SIGABRT程序的异常终止,如调用 abort。(按 Ctrl+C 产生abort中断)SIGFPE错误的算术运算,比如除以零或导致溢出的操作。SIGI原创 2021-10-10 16:15:29 · 410 阅读 · 0 评论 -
八、C++命名空间、模板、预处理器、预定义宏
一、命名空间假设这样一种情况,当一个班上有两个名叫 Zara 的学生时,为了明确区分它们,我们在使用名字之外,不得不使用一些额外的信息,比如他们的家庭住址,或者他们父母的名字等等。同样的情况也出现在 C++ 应用程序中。例如,您可能会写一个名为 xyz() 的函数,在另一个可用的库中也存在一个相同的函数 xyz()。这样,编译器就无法判断您所使用的是哪一个 xyz() 函数。因此,引入了命名空间这个概念,专门用于解决上面的问题,它可作为附加信息来区分不同库中相同名称的函数、类、变量等。使用了命名空间即原创 2021-09-28 16:01:52 · 494 阅读 · 0 评论 -
七、C++文件和流、异常处理、动态内存
一、C++文件和流到目前为止,我们已经使用了 iostream 标准库,它提供了 cin 和 cout 方法分别用于从标准输入读取流和向标准输出写入流。现在介绍如何从文件读取流和向文件写入流。这就需要用到 C++ 中另一个标准库 fstream,它定义了三个新的数据类型:数据类型描述ofstream该数据类型表示输出文件流,用于创建文件并向文件写入信息。ifstream该数据类型表示输入文件流,用于从文件读取信息。fstream该数据类型通常表示文件流,且同时具有原创 2021-09-25 18:10:27 · 627 阅读 · 0 评论 -
六、C++重载运算符、重载函数、多态、抽象数据、数据封装、接口(抽象类)
C++ 允许在同一作用域中的某个函数和运算符指定多个定义,分别称为函数重载和运算符重载。重载声明是指一个与之前已经在该作用域内声明过的函数或方法具有相同名称的声明,但是它们的参数列表和定义(实现)不相同。当您调用一个重载函数或重载运算符时,编译器通过把您所使用的参数类型与定义中的参数类型进行比较,决定选用最合适的定义。选择最合适的重载函数或重载运算符的过程,称为重载决策。1.C++ 中的函数重载在同一个作用域内,可以声明几个功能类似的同名函数,但是这些同名函数的形式参数(指参数的个数、类型或者顺序)原创 2021-09-02 17:53:24 · 370 阅读 · 0 评论 -
五、C++ 类、对象、继承
C++ 在 C 语言的基础上增加了面向对象编程,C++ 支持面向对象程序设计。类是 C++ 的核心特性,通常被称为用户定义的类型。类用于指定对象的形式,它包含了数据表示法和用于处理数据的方法。类中的数据和方法称为类的成员。函数在一个类中被称为类的成员。一、C++类定义定义一个类,本质上是定义一个数据类型的蓝图。这实际上并没有定义任何数据,但它定义了类的名称意味着什么,也就是说,它定义了类的对象包括了什么,以及可以在这个对象上执行哪些操作。类定义是以关键字 class 开头,后跟类的名称。类的主体是包原创 2021-09-01 18:24:08 · 219 阅读 · 0 评论 -
四、复合类型(数组、字符串、指针、数据结构、共用体、枚举)
一、数组数组(array)是一种数据格式,能够存储多个同类型的值。每个值都存储在一个独立的数组元素中,计算机在内存中依次存储数组的各个元素。要创建数组,可使用声明语句。数组声明应指出以下三点:♦ 存储在每个元素中的值的类型;♦ 数组名;♦ 数组中的元素数。声明数组的通用格式如下:typeName arryName[arrySize];表达式arraySize指定元素数目,它必须是整型常数(如10)或const值,也可以是常量表达式(如8 * sizeof(int)),即其中所有的值在编译时原创 2021-08-31 11:02:01 · 689 阅读 · 0 评论 -
三、C++基础二(修饰符、存储类、函数、引用、日期&时间)
一、C++修饰符C++ 允许在 char、int 和 double 数据类型前放置修饰符。修饰符用于改变基本类型的含义,所以它更能满足各种情境的需求。下面列出了数据类型修饰符:signed、unsigned、long、short。修饰符 signed、unsigned、long 和 short 可应用于整型,signed 和 unsigned 可应用于字符型,long 可应用于双精度型。修饰符 signed 和 unsigned 也可以作为 long 或 short 修饰符的前缀。例如:unsign原创 2021-07-12 18:26:41 · 244 阅读 · 0 评论 -
二、C++基础一(基本语法、程序结构、关键字、数据类型、变量类型和作用域、常量的使用)
一、C++ 基本语法C++ 程序可以定义为对象的集合,这些对象通过调用彼此的方法进行交互。现在让我们简要地看一下什么是类、对象,方法、即时变量。. 对象 - 对象具有状态和行为。例如:一只狗的状态 - 颜色、名称、品种,行为 - 摇动、叫唤、吃。对象是类的实例。. 类 - 类可以定义为描述对象行为/状态的模板/蓝图。. 方法 - 从基本上说,一个方法表示一种行为。一个类可以包含多个方法。可以在方法中写入逻辑、操作数据以及执行所有的动作。. 即时变量 - 每个对象都有其独特的即时变量。对象的状态是由原创 2021-06-25 17:25:03 · 334 阅读 · 0 评论 -
一、了解C++
C++学习笔记一:了解C++1.C++ 简介C++ 是一种静态类型的、编译式的、通用的、大小写敏感的、不规则的编程语言,支持过程化编程、面向对象编程和泛型编程。C++ 被认为是一种中级语言,它综合了高级语言和低级语言的特点。C++ 是由 Bjarne Stroustrup 于 1979 年在新泽西州美利山贝尔实验室开始设计开发的。C++ 进一步扩充和完善了 C 语言,最初命名为带类的C,后来在 1983 年更名为 C++。C++ 是 C 的一个超集,事实上,任何合法的 C 程序都是合法的 C++原创 2021-06-25 11:55:04 · 225 阅读 · 0 评论