随笔分类 -  C/C++

摘要://#include <stdio.h> //#include <stdlib.h> //#include <unistd.h> #include <windows.h> //#include <pthread.h> #include <mutex> #include <thread> #inclu 阅读全文
posted @ 2019-03-27 18:24 jadeshu 阅读(193) 评论(0) 推荐(0)
摘要:#include <iostream> #include <vector> #include <map> #include <unordered_map> #include <algorithm> using namespace std; void OutPut(char val) { cout < 阅读全文
posted @ 2019-03-24 21:51 jadeshu 阅读(662) 评论(0) 推荐(0)
摘要:表 1 中,“流操纵算子”栏中的星号*不是算子的一部分,星号表示在没有使用任何算子的情况下,就等效于使用了该算子。 调用cout的成员函数 ostream 类有一些成员函数,通过 cout 调用它们也能用于控制输出的格式,其作用和流操纵算子相同,如表 2 所示。 setf 和 unsetf 函数用到 阅读全文
posted @ 2019-03-24 14:40 jadeshu 阅读(354) 评论(0) 推荐(0)
摘要:日志 返回日志列表 C++中,内存分为5个区:堆、栈、自由存储区、全局/静态存储区和常量存储区 2012-1-13 16:23 C++中,内存分为5个区:堆、栈、自由存储区、全局/静态存储区和常量存储区。 栈:是由编译器在需要时自动分配,不需要时自动清除的变量存储区。通常存放局部变量、函数参数等。 阅读全文
posted @ 2019-03-09 03:05 jadeshu 阅读(573) 评论(0) 推荐(0)
摘要: 阅读全文
posted @ 2019-03-08 20:18 jadeshu 阅读(203) 评论(0) 推荐(0)
摘要: 阅读全文
posted @ 2019-03-08 20:10 jadeshu 阅读(189) 评论(0) 推荐(0)
摘要:iterator与const_iterator 所有的标准库容器都定义了相应的迭代器类型。迭代器对所有的容器都适用,现代 C++ 程序更倾向于使用迭代器而不是下标操作访问容器元素。 1.iterator,const_iterator作用:遍历容器内的元素,并访问这些元素的值。iterator可以改元 阅读全文
posted @ 2019-03-08 20:06 jadeshu 阅读(5316) 评论(1) 推荐(3)
摘要:#include using namespace std; class Test { friend ostream& operatorm_i); return *this; } // 后缀()++ const Test operator++(int) { Test temp = *this; ++(*this); return temp; } // 前缀--... 阅读全文
posted @ 2019-03-05 01:55 jadeshu 阅读(190) 评论(0) 推荐(0)
摘要:以C++为例三大特效:封装、继承、多态,面向对象的编程语言都具有这些特性。 那么本节来谈谈多态性,尽量说的简单些容易理解! 多态什么意思?即运行时多态,以相同的方式处理不同类型的对象,产生不同的结果! 请说人话,官方定义看不懂。。。。。。 多态即多种形态 1.普通函数的处理 首先需要知道在C++中对 阅读全文
posted @ 2019-02-12 22:09 jadeshu 阅读(512) 评论(0) 推荐(0)
摘要:本系列文章由jadeshu编写,转载请注明出处。https://blog.csdn.net/jadeshu/article/details/85137936 作者:jadeshu 邮箱: jadeshu@qq.com 欢迎邮件交流 有不正确的地方请指正,学习内容还需要深入 一.程序基础(重点) 1. 阅读全文
posted @ 2018-12-20 20:26 jadeshu 阅读(1206) 评论(0) 推荐(0)
摘要:做个记录,容易混淆! 1.栈地址方向和buf地址方向不同概念 2.大端和小端 低位存低地址,高位存高地址 》小端 (x86) 高位存低地址,低位存高地址 》大端 阅读全文
posted @ 2018-12-16 00:27 jadeshu 阅读(126) 评论(0) 推荐(0)
摘要:1 新类型 C++ 11新增了long long和unsigned long long,以支持64bit宽度; 新增char16_t和char32_t以支持16位和32位字符表示; 增加了“原始”字符串。 2 初始化 C++ 11扩展了大括号{}的适用范围,既可以用于基本类型,也可以用于自定义类型: 阅读全文
posted @ 2018-11-26 22:08 jadeshu 阅读(132) 评论(0) 推荐(0)
摘要:【1】为什么空类可以创建对象呢? 示例代码如下: 让我们先看看这个例子。既然都没有构造函数,怎么实现对象obj1的构建呢? 哦,经过大脑的回旋式搜索,忆得有一本书上说过,当用户定义一个空类(如上)时,编译器就会为这个类默认生成六个方法。 既然是编译器默认完成的工作,那我们只要知道具体是那些方法,其余 阅读全文
posted @ 2018-09-02 00:22 jadeshu 阅读(1140) 评论(0) 推荐(0)
摘要:C++中的explicit关键字只能用于修饰只有一个参数的类构造函数, 它的作用是表明该构造函数是显示的, 而非隐式的, 跟它相对应的另一个关键字是implicit, 意思是隐藏的,类构造函数默认情况下即声明为implicit(隐式). 那么显示声明的构造函数和隐式声明的有什么区别呢? 我们来看下面 阅读全文
posted @ 2018-09-01 23:17 jadeshu 阅读(68) 评论(0) 推荐(0)
摘要:【1】关于0 与 NULL 【2】关于nullptr和void*的称法 nullptr习惯被称作指针空值 void*习惯被称作无类型指针 【3】nullptr 和 nullptr_t nullptr习惯被称作指针空值 nullptr_t习惯被称作指针空值类型 即表示指针空值类型并非仅有nullptr 阅读全文
posted @ 2018-09-01 22:45 jadeshu 阅读(175) 评论(0) 推荐(0)
摘要:【1】lambda表达式语法定义 lambda表达式的语法定义如下: [capture] (parameters) mutable ->return-type {statement}; (1) [capture]: 捕捉列表。捕捉列表总是出现在lambda函数的开始处。实质上,[]是lambda引出 阅读全文
posted @ 2018-09-01 22:37 jadeshu 阅读(123) 评论(0) 推荐(0)
摘要:发现有好多人this指针的本质有错误的认识,估计不少人一说起this指针,脑袋立即反应出:那个类里使用的this指针,那么这个指针就是那个类类型咯。其实事实根本不是这样子的,这里修正对this指针的错误理解: 首先,我在这里重申一点:“this”不是变量,是关键字,意味着this指针并不是哪个真实存 阅读全文
posted @ 2018-04-15 18:25 jadeshu 阅读(217) 评论(0) 推荐(0)
摘要:运行结果: 补充说明,网上摘录: Overload(重载):在C++程序中,可以将语义、功能相似的几个函数用同一个名字表示,但参数或返回值不同(包括类型、顺序不同),即函数重载。 (1)相同的范围(在同一个类中); (2)函数名字相同; (3)参数不同; (4)virtual 关键字可有可无。 Ov 阅读全文
posted @ 2018-01-27 15:57 jadeshu 阅读(510) 评论(0) 推荐(0)
摘要:一.const_cast:用于移除const数据,目标数据类型必须与原类型相同 二.dynamic_cast:用于在两个不同类型之间进行强制转换并且在执行运行时检查它。保证它的合法性,如果在两个互相矛盾的类型之间转化时,返回值为NULL。 三.static_cast:用于在两个不同类型之间进行强制转 阅读全文
posted @ 2017-12-09 16:21 jadeshu 阅读(106) 评论(0) 推荐(0)