- 博客(22)
- 资源 (33)
- 收藏
- 关注
原创 C++生成和解析XML文件
概述1.xml 指可扩展标记语言(EXtensible Markup Language)2.xml 是一种标记语言,类似html3.xml 的设计宗旨是传输数据,而非显示数据4.xml 标签没有被预定义。需要自行定义标签XML与HTML区别1.xml 不是 html 的替代。2.xml 和 html 为不同的目的而设计:3.xml 被设计为传输和存储数据,其焦点是数据的...
2017-07-31 16:39:48 28167
原创 C++实现16进制字符串转换成int整形值
开发中经常需要把16进制字符串转换成整形,写了个个代码供大家参考下: #include <stdio.h>#include <string.h>//字符转换成整形int hex2int(char c){ if ((c >= 'A') && (c <= 'Z')) { return c - 'A' + 10; } e...
2017-07-28 10:31:36 18881 1
转载 一个好隐蔽的C/C++代码bug
来自:微博@ruanyf,一本书上说,下面的 C 语言代码可能会产生无限循环。看了半天,才意识到 Bug 在哪里。完美解答:数组下标越界。数组a总共有10个值,a[0]...
2017-07-27 13:45:55 504
原创 【C++札记】标准模板库string
介绍c++中字符串string对象属于一个类,内置了很多实用的成员函数,操作简单,方便更直观。命名空间为std,所属头文件<string> 注意:不是<string.h>。跟进代码会发现string其实只是basic_string模板类的一个typedef。赋值 //方法1 string str1 = "woniu201"; //方法2 c...
2017-07-26 17:19:36 8120
原创 Rabbitmq C++客户端 Rabbitmq Client
概述最近项目消息队列服务选用了rabbitmq,server端用的C++开发的,于是需要开发rabbitmq的c++客户端,国际惯例先百度了一圈,然后github搜了一圈,竟然发现排名靠前的需要付费才能使用,尼玛这都拿出来骗钱(愤青了),于是产生了写个客户端给大家使用的念头。我的应用场景是这样的生产者是用java写的(java别说了,一搜一大堆,改个服务器地址就能用),服务端作为消费者,老...
2017-07-26 11:10:18 29665 17
原创 C++:标准模板库map
一:介绍map是STL的关联式容器,以key-value的形式存储,以红黑树(平衡二叉查找树)作为底层数据结构,对数据有自动排序的功能。命名空间为std,所属头文件<map> 注意:不是<map.h> 二:常用操作容量:a.map中实际数据的数据:map.size()b.map中最大数据的数量:map.max_size()c.判断容器是否为空:ma...
2017-07-24 14:23:18 7760
原创 C++:标准模板库vector
一:介绍vector是C++标准模板库,是一个容器,底层是数组,为连续内存。命名空间为std,所属头文件为<vector> 注意:不是<vector.h>vector存储数据时,会分配一个存储空间,如果继续存储,该分配的空间已满,就会分配一块更大的内存,把原来的数据复制过来,继续存储,这些性能也会一定程度上会有损耗二:常用操作容量:a.vector大...
2017-07-20 17:12:35 8034
原创 C++:标准模板库(STL)
介绍STL(standard template library)标准模板库,是一种高效的C++程序库。STL分为三类:container(容器),iterator(迭代器)和algorithm(算法)。 容器(container)容器是用来管理某一类对象的集合,包括序列式容器和关联式容器。 序列式容器:vector,list,deque 关联式容器:map,set...
2017-07-18 16:43:45 14697
原创 C++:函数模板
介绍函数模板是用来创建通用的函数,用来支持不同的参数和返回值类型。语法如下: template <typename 数据类型标识符>返回类型 函数名 (参数){ 函数体} 使用函数模板的优点:相同的算法不用重复的写多遍,简化代码。函数模板用于实现通用的算法 generic algrithm,有得成为泛型算法。推荐书写风格: tem...
2017-07-18 11:17:41 7008
原创 【C++札记】命名空间(namespace)
介绍命名空间可以解决程序中的同名冲突,尤其大型项目多人开发中经常用到。比如我们使用C++的标准输出std::cout就使用了std命名空间。使用作用域符::#include <iostream>using namespace std;int var = 10;void foo(){ cout << "this is foo" <&l...
2017-07-18 09:18:46 7083
原创 C++:内部类
介绍1.把一个类定义在另一个类的内部,称里面的类为内部类。 例如:class A{public: class B { public: int x; int y; };};类B即为内部类。 2.内部类和外部类相互没有特权,即外部类无法自由访问内部类,内部类也无法自由访问外部类。 a.他们不是朋友关系。 b.他们不是父子关系...
2017-07-17 16:58:01 10294
原创 【C++札记】new和delete
介绍1.malloc,free和new,delete区别。 a.malloc,free是C/C++的标准库函数。new,delete是c++的操作符。 b.malloc申请的是内存,严格意义不是“对象”,new申请的可以理解为“对象”,new 时会调用构造函数,返回指向该对象的指针。 c.对于class类型,必须用new/delete来创建和销毁,自动调用构造和析构函数...
2017-07-17 14:24:32 8386
原创 【C++札记】构造函数与析构函数
构造函数(constructor)1.构造函数是种特殊的类成员函数,遵循如下规则: a.函数名与类名必须相同。 b.没有返回值例如:class Obj{...public: Obj() { ... }};2.构造函数可以带参数,也可以重载class Obj{...publ...
2017-07-16 14:59:48 8211
原创 【C++札记】类的分离式写法
介绍类的分离式写法,使得代码更加规范,增强了阅读性。分离式写法的规则:1.类的变量:写在类的里面2.成员函数:类中写函数的声明,函数的定义写在类体外。3.写在类外函数定义时,类名前加限定(Object: :),其中, ::理解为表示范围的符号。代码演示头文件:Object.h#ifndef _OBJECT_H_#define _OBJECT_H_clas...
2017-07-16 11:43:16 6744
原创 【C++札记】动态分配内存(malloc,free)
介绍操作系统中存在一个内存管理器(Memory Manager),简称MM,它负责管理内存。MM提供的服务:应用程序可以向MM申请一块指定大小的内存(借出),用完之后应用程序应该释放(还回)。所需头文件 <stdlib.h>如:void* p = malloc(1024);//申请,从MMM借出内存free(p); //释放,还回MM1.MM管理的内存...
2017-07-16 11:08:42 10212 2
原创 C++:标准C函数(随机数,时间函数)
介绍ANSI组织定义了C标准和标准库函数。使用标准C函数优点:使用标准C函数在任何平台上都支持,使得同一个源码,在Windows编译运行的结果和Linux上编译运行结果相同,无需更改代码。 随机数(rand)产生指定范围内随机数(1~100) #include <stdio.h>#include <stdlib.h>int main(...
2017-07-15 21:46:12 10107
原创 【C++札记】引用
介绍引用是C++中特有的语法,在C语言中不存在。本质上引用(reference)就是指针,在类型名后面加上一个&号就是引用类型。1.指针与引用的定义进行比较指针定义: 引用定义:int a = 123; ...
2017-07-15 20:28:15 7010
原创 C++:链表(有头链表)
介绍把链表分为无头链表和有头链表。无头链表:所有的节点都包含了有效数据,上一篇文章中演示代码使用的就是无头链表。有头链表:用一个固定的头节点来指代整个链表,所有的对象都挂在这个头节点下面,而头节点不包含有效数据。有头链表优点:可以简化链表操作,当链表的对象个数为0时,无头链表不好表示。演示代码创建有头链表,封装函数,通过有头链表的链表头添加节点对象 #in...
2017-07-15 17:58:11 9963
原创 C++:链表(初识链表)
介绍链表是把若干个对象用指针串联起来,形成一个链状的数据结构,链表在开发中很重要。1.链表特征:只需要知道一个链表头,就能访问每个节点的对象。2.链表遍历:通过每个节点指针next来对的下一个节点的地址。3.链表尾部:最后一个节点对象的next的值是NULL。 代码演示创建和遍历链表 #include <stdio.h>//结...
2017-07-15 17:21:44 9546
原创 Erlang:[笔记三,构建工具rebar之使用依赖]
是的,平时经常听到大牛说到的gc,就是垃圾回收器,全称Garbage Collection。 早期版本,准确地说是5.3之前(不包括5.3)的垃圾回收机制,是没有专门的垃圾回收器的。只是简单的判断了一下变量的zval的refcount是否为0,是的话就释放否则不释放直至进程结束。 乍一看确实没苯蜗逗焚MM72N鞘悠毁粕庸忍《 http://pregnant.baidu.com/article/3...
2017-07-07 10:34:55 2970
原创 Erlang:[笔记二,构建工具rebar之发布应用]
上一章我们对PHP的源码目录结构有了初步了解,本章我们继续从生命周期的维度对PHP进行剖析。 概览 生命周期是什么呢?你可以把它看作执行过程,PHP的生命周期也就是它从开始执行到结束执行的过程。 PHP生命周期有五个阶段,分别为模块初始化阶段、请求初始化阶段、执行阶段、请求关闭阶段、模块关闭阶段科液氛18R8f傲逊院轿氛嚼驳《 http://baobao.baidu.com/article/95...
2017-07-06 13:57:05 2343
原创 Erlang:[笔记一,构建工具rebar之编译]
先来个实战 1. 测试案例 需求: 要求表情库里所有表情包大小都固定 实际效果: 由于图片原始大小都不一样,强行设定大小值会导致拉伸,如果不设定大小则参差不齐。例如: 2. 解决方法 大多数都是利用 来避免对图片造成的压缩或者拉伸。 小巧而强大的object fit object fit似乎是被员干核胤棺轿X试Y莱枚诶豢啃惶《 http://baobao.baidu.com/article/b0...
2017-07-06 11:33:49 3323
linux(centos)使用glib日志库
2017-08-23
rabbitmq C++客户端
2017-07-26
springboot_sentinelredis
2017-04-03
springboot_redis
2017-04-03
springboot_mybatis_demo2
2017-02-24
springboot_log4j2下载
2017-01-11
springboot_properties_multienv
2017-01-09
springboot_properties
2017-01-09
MQTT客户端,和mosquitto_pub.exe功能一样_VS2010 C++源码
2014-12-11
MFC+Opencv 摄像头保存为图像和视频
2014-09-04
SystemControl.zip
2019-08-13
snappy-linux-1.1.7.zip
2019-07-12
snappy-windows-1.1.7.zip
2019-07-12
libcurl支持https的dll和lib(包含openssl的dll和lib)
2018-10-16
java调用c++生成so库
2017-09-22
java调用c++生成dll
2017-09-22
C++构造解析json
2017-09-06
glogDemo(linux)
2017-08-23
glogDemo(windows)
2017-08-23
c++实现解析xml
2017-07-31
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人