随笔分类 -  C++

摘要:5 5 5 5 2 5 5 5 5 2 5 5 5 5 2 3 3 3 3 如上图区所示,长 23 ,宽18,每个格子长宽均为 5,那么第一个小方框的的区域坐标为(0,0)(5,0)(0,5)(5,5) 第一行最后一个小方块的坐标为(20,0)(22,0)(20,5)(22,5) 第一列最后一个小方 阅读全文
posted @ 2020-05-31 16:29 王清河 阅读(296) 评论(0) 推荐(0) 编辑
摘要:reinterpret_cast用在任意指针(或引用)类型之间的转化,以及指针与足够大的整数类型之间的转化,从整数类型(包括枚举类型)到指针类型,无视大小。 作用及原理:将一个类型的指针,转换为另一个类型的指针,这种转换不用修改指针变量值数据存放格式(不改变指针变量值),只需在编译时重新解释指针的类 阅读全文
posted @ 2020-01-19 14:54 王清河 阅读(263) 评论(0) 推荐(0) 编辑
摘要:重载:指的是同一可访问区被声明的几个具有不同参数列(参数的类型,个数,顺序不同)的同名函数,根据参数列表确定调用哪个函数。重载不关心函数返回类型。 class A { public: void test{int i}; //overload void test(double i); //overlo 阅读全文
posted @ 2020-01-04 18:07 王清河 阅读(586) 评论(0) 推荐(0) 编辑
摘要:fgets(str,n,stdin) 从键盘输入一行,替代gets()。读取到n-1字节时或换行符时终止,如果是文件的话,读到文件结尾也会停止 getline(cin,str) str的类型必须是string类,它是C++特定的字符串类,区别于C的char *数据类型。 cin 输入它会传递并忽略任 阅读全文
posted @ 2019-09-18 20:14 王清河 阅读(174) 评论(0) 推荐(0) 编辑
摘要:C/C++头文件一览C、传统 C++#include <assert.h> //设定插入点#include <ctype.h> //字符处理#include <errno.h> //定义错误码#include <float.h> //浮点数处理#include <fstream.h> //文件输入/ 阅读全文
posted @ 2019-08-19 17:40 王清河 阅读(142) 评论(0) 推荐(0) 编辑
摘要:多线是多任务处理的一种特殊方式,多任务处理允许让电脑同事运行两个或两个以上的程序,一般情况下,两种类型的多任务处理:基于进程和基于线程。 基于进程的多任务处理是程序的并发执行。 基于线程的多任务处理是同一程序的片段的并发执行。 多线程程序包含可以同时运行的两个或多个部分。这样的程序中的每个部分称为一 阅读全文
posted @ 2019-08-16 17:26 王清河 阅读(532) 评论(0) 推荐(0) 编辑
摘要:信号是由操作系统传给进程的中断,会提早终止一个程序。在UNIX、LINUX、Mac OS或windows系统上,可以通过按Ctrl+c产生中断。有些信号不能被程序捕获,但是下表所列信号可以在程序中被捕获,并可以基于信号采取适当的动作。这些信号是定义在C++头文件<csignal>中。 信号 描述 S 阅读全文
posted @ 2019-08-16 15:36 王清河 阅读(378) 评论(0) 推荐(0) 编辑
摘要:预处理器是一些指令,指示表一起在实际编译之前所需要完成的预处理。 所有的预处理器指令都是以井号(#)开头,只有空格字符可以出现在预指令处理之前。预处理指令不是C++语句,所以他们不会以分号(;)结尾。 #define预处理 #define预处理指令用于创建符号常量。该符号常量通常称之为宏,指令的一般 阅读全文
posted @ 2019-08-16 14:12 王清河 阅读(503) 评论(0) 推荐(0) 编辑
摘要:模板是泛型编程的基础,泛型编程即以一种独立于任何特定类型的方式编写代码。 模板是创建泛型或函数的蓝图或公式。库容量,比如迭代器和算法,都是泛型编程的例子。 每个容器都有一个单一的定义,比如向量,我们可以定义许多不同类型的向量。比如vector<int> 或vector<string> 函数模板 模板 阅读全文
posted @ 2019-08-16 11:26 王清河 阅读(293) 评论(0) 推荐(0) 编辑
摘要:C++引入命名空间,作为附加信息来区分不同库中相同名称的函数,类,变量等,使用了命名空间即定义了上下问,本质上命名空间就是定义了一个范围。 定义命名空间: 命令空间的定义使用关键字namespace,后面跟命名空间的名称,如下所示: 为了调用带有命名空间的函数或变量,需要在前面加上命名空间的名称,如 阅读全文
posted @ 2019-08-15 16:59 王清河 阅读(589) 评论(0) 推荐(0) 编辑
摘要:iostream标准库提供了cin和cout方法用于标准输入读取流和向标准输出写入流。 从文件读取流和向文件写入流,需要用到fstream库。它定了三个数据类型 数据类型 描述 ofstream 该数据类型表示输出文件流,用于创建文件并向文件写入信息 ifstream 该数据类型表示输入文件流,用于 阅读全文
posted @ 2019-08-14 18:25 王清河 阅读(327) 评论(0) 推荐(0) 编辑
摘要:C++程序中内存分为两个部分 栈:在函数内部声明的所有变量都将占用栈内存。 堆:这是程序中未使用的内存,在程序中可用于动态分配内存。 在很多时候,我们无法提前预知需要多少内存来存储某个变量的特定信息,所需内存的大小需要在运行时才能确定。 在C++中,可以使用特殊的运算符为给定类型的变量在运行时分配堆 阅读全文
posted @ 2019-08-14 18:25 王清河 阅读(290) 评论(0) 推荐(0) 编辑
摘要:按字面意思就是多种形态。当类之间存在层次结构,并且类之间通过继承关联时,就用到了多态。 C++多态意味着调用成员函数,会根据函数的对象的类型来执行不同的函数。 运行结果: exbot@ubuntu:~/wangqinghe/C++/20190812$ g++ polymorphic.cpp -o p 阅读全文
posted @ 2019-08-14 18:24 王清河 阅读(200) 评论(0) 推荐(0) 编辑
摘要:异常时程序在执行期间产生的问题。C++异常是指在程序运行时发生的特殊情况,比如尝试除以零的操作。 异常提供了一种转移程序控制权的方式。C++异常处理涉及到三个关键字:try、catch、throw l throw:当问题出现时,程序回抛出一个异常。这是通过使用throw关键字来完成。 l catch 阅读全文
posted @ 2019-08-14 10:21 王清河 阅读(291) 评论(0) 推荐(0) 编辑
摘要:类成员访问运算符(->)可以被重载,但它比较麻烦它被定义用于为一个类赋予“指针”行为。运算符->必须是一个成员函数。如果使用了->运算符,返回类型必须是指针或者是类的对象。 运算符->通常与指针引用运算符 * 结合使用,用于实现“只能指针”的功能,这些指针是行为与正常指针相似的对象,唯一不同的是,当 阅读全文
posted @ 2019-08-12 09:21 王清河 阅读(238) 评论(0) 推荐(0) 编辑
摘要:C++能够使用流提取运算符>>和流插入运算符<< 来输入输出内置数据类型,也可以重载流提取运算符和流插入运算符来操作对象等用户自定义的数据类型。 我们有时需要把运算符重载函数声明为类的友元函数,这样我们就能不用构造对象而直接调用函数。 运行结果: exbot@ubuntu:~/wangqinghe/ 阅读全文
posted @ 2019-08-10 18:48 王清河 阅读(834) 评论(0) 推荐(0) 编辑
摘要:递增运算符(++)和递减运算符(--)是C++语言中两个重要的一元运算符。 运行结果: exbot@ubuntu:~/wangqinghe/C++/20190808$ g++ addMyself.cpp -o addMyself exbot@ubuntu:~/wangqinghe/C++/20190 阅读全文
posted @ 2019-08-10 18:48 王清河 阅读(1030) 评论(0) 推荐(0) 编辑
摘要:重载赋值运算符(=),用于创建一个对象,比如拷贝构造函数。 运行结果: exbot@ubuntu:~/wangqinghe/C++/20190809$ g++ evaluate.cpp -o evaluate exbot@ubuntu:~/wangqinghe/C++/20190809$ ./eva 阅读全文
posted @ 2019-08-10 18:48 王清河 阅读(104) 评论(0) 推荐(0) 编辑
摘要:函数调用运算符()可以被重用于类的对象。当重载()时,没有创造一个新的调用函数的方式,相反地,这是创建一个可以传递任意数目参数的运算符函数。 运行结果: exbot@ubuntu:~/wangqinghe/C++/20190809$ ./bracket First Distance : F: 11 阅读全文
posted @ 2019-08-10 18:48 王清河 阅读(820) 评论(0) 推荐(0) 编辑
摘要:重载该运算符用于增强操作C++数组的功能。 运行结果: exbot@ubuntu:~/wangqinghe/C++/20190809$ g++ subscript.cpp -o subscript exbot@ubuntu:~/wangqinghe/C++/20190809$ ./subscript 阅读全文
posted @ 2019-08-10 18:48 王清河 阅读(411) 评论(0) 推荐(0) 编辑

点击右上角即可分享
微信分享提示