自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

Fate_Dream的博客

不断学习借鉴,待羽翼雄厚,展翅高翔!

  • 博客(75)
  • 问答 (1)
  • 收藏
  • 关注

转载 Linux下面使用rpm命令

RPM是RedHat Package Manager(RedHat软件包管理工具)类似Windows里面的“添加/删除程序”rpm 执行安装包二进制包(Binary)以及源代码包(Source)两种。二进制包可以直接安装在计算机中,而源代码包将会由RPM自动编译、安装。源代码包经常以src.rpm作为后缀名。常用命令组合: -ivh:安装显示安装进度--inst

2017-03-05 14:03:23 486

转载 VIM入门

使用vundle管理插件vundle让你不需要在纠结到哪里去找插件和配置,所有的插件都以相似的方式进行管理,很大程度上降低了使用成本!插件存放的路径为~/.vim/bundle/,目录建好后下载vundle:git clone https://github.com/VundleVim/Vundle.vim.git ~/.vim/bundle/Vundle.vim

2017-02-06 09:55:55 425

转载 枚举enum用法

enum Color{ Red, Green = 10, Blue }则:Red = 0  Green = 10  Blue = 11转换:1、 枚举转常数(int)Color.Red = 0(int)Color.Green = 102、 常数转枚举Color mycolor = (Color)03、 根据常数

2017-01-23 10:16:23 457

转载 istringstream、ostringstream、stringstream 类介绍

0、C++的输入输出分为三种:(1)基于控制台的I/O    (2)基于文件的I/O        (3)基于字符串的I/O          1、头文件[cpp] view plaincopyprint?#include   2、作用istringstream类用于执行C++风格的字符串流的输入操

2017-01-21 15:14:13 408

转载 linux常用svn命令

1、将文件checkout到本地目录svn checkout path(path是服务器上的目录)例如:svn checkout svn://192.168.1.1/pro/domain简写:svn co        2、往版本库中添加新的文件svn add file例如:svn addtest.php(添加test.php)svn add *.php(添加当前目录下

2017-01-21 14:03:05 311

转载 linux下使用ack进行代码搜索

linux下使用ack进行代码搜索Linux | 2014-03-06 22:38:36 | 5165次阅读 | 0评1、安装wget http://beyondgrep.com/ack-2.12-single-filesudo mv ack-2.12-single-file /usr/bin/acksudo chmod 0755 /usr/bin/ac

2017-01-20 16:41:47 2931

转载 cjson 源码阅读笔记

json 基本信息在阅读 json 之前, 建议阅读一下json 的官方介绍。如果上面的英文吓到你了的话, 可以看看这个中文翻译版本.我的 这个 cjson 是从官网指定的地方下载的ourceforge.在看完官网的介绍后,我们知道 json 的 value 存在这么几种类型: 对象, 数组, 字符串, 数字, true, false, null。其中对象是

2017-01-20 16:34:00 1326

转载 Linux学习--gdb调试

一.gdb常用命令:命令描述backtrace(或bt)查看各级函数调用及参数finish连续运行到当前函数返回为止,然后停下来等待命令frame(或f) 帧编号选择栈帧info(或i) locals查看当前栈帧局部变量的值list(或l)

2017-01-19 20:35:32 262

转载 SVN 冲突解决方法

工程师A修改了a.txt的第一行,提交了。工程师B也修改了a.txt的第一行,然后执行svn up,这时SVN提示了:(以下,你开始扮演工程师B的角色了)$ svn up在 “a.txt” 中发现冲突。选择: (p) 推迟,(df) 显示全部差异,(e) 编辑,(mc) 我的版本, (tc) 他人的版本,(s) 显示全部选项:我一般选择p(推迟),即引入冲突到本地,

2017-01-19 09:54:00 605

转载 C++中的单例模式

单例模式也称为单件模式、单子模式,可能是使用最广泛的设计模式。其意图是保证一个类仅有一个实例,并提供一个访问它的全局访问点,该实例被所有程序模块共享。有很多地方需要这样的功能模块,如系统的日志输出,GUI应用必须是单鼠标,MODEM的联接需要一条且只需要一条电话线,操作系统只能有一个窗口管理器,一台PC连一个键盘。       单例模式有许多种实现方法,在C++中,甚至可以直接用一个全局变量做

2017-01-16 15:29:35 225

转载 C++文件读写详解(ofstream,ifstream,fstream

在看C++编程思想中,每个练习基本都是使用ofstream,ifstream,fstream,以前粗略知道其用法和含义,在看了几位大牛的博文后,进行整理和总结:这里主要是讨论fstream的内容:[java] view plain copy print?#include   ofstream         //文

2017-01-14 13:17:39 351

转载 Protobuf语言指南

Protobuf语言指南l  定义一个消息(message)类型l  标量值类型l  Optional 的字段及默认值l  枚举l  使用其他消息类型l  嵌套类型l  更新一个消息类型l  扩展l  包(package)l  定义服务(service)l  选项(option)l  生成访问类

2017-01-06 17:05:09 286

转载 register关键字

关键字regiter请求编译器尽可能的将变量存在CPU的寄存器中。有以下几点注意的地方。register变量必须是能被CPU寄存器所接受的类型,这通常意味着register变量必须是一个单个的值,并且其长度应小于或等于整型的长度。但是,有些机器的寄存器也能存放浮点数。register变量可能不存放在内存中,所以不能用取址符运算符“ & ”。只有局部变量和形参可以作为register变量,全

2017-01-06 09:50:57 293

原创 快速排序

快速排序是 C.R.A.Hoare 于 1962 年提出的一种划分交换排序。它采用了一种分治的策略,通常称其为分治法。该方法的基本思想是:1.先从数列中取出一个数作为基准数。2.分区过程,将比这个数大的数全放到它的右边,小于或等于它的数全放到它的左边。3.再对左右区间重复第二步,直到各区间只有一个数。void fast_sort(int* arr,int lef

2017-01-03 17:36:41 347

转载 滑动窗口

滑动窗口概念不仅存在于数据链路层,也存在于传输层,两者有不同的协议,但基本原理是相近的。其中一个重要区别是,一个是针对于帧的传送,另一个是字节数据的传送概念滑动窗口(Sliding window)是一种流量控制技术。早期的网络通信中,通信双方不会考虑网络的拥挤情况直接发送数据。由于大家不知道网络拥塞状况,同时发送数据,导致中间节点阻塞掉包,谁也发不了数据,所以就

2017-01-03 16:20:55 1149

转载 C++编程学习50个经典网站

C/C++是最主要的编程语言。这里列出了50名优秀网站和网页清单,这些网站提供c/c++源代码。这份清单提供了源代码的链接以及它们的小说明。我已尽力包括最佳的C/C++源代码的网站。这不是一个完整的清单,您有建议可以联系我,我将欢迎您的建议,以进一步加强这方面的清单。 1、http://snippets.dzone.com/tag/c/ --数以千计的有用的C语言源代码片段 2、http:

2017-01-03 14:25:19 486

转载 【游戏后端】游戏服务器端开发的一些建议

摘要: 本文作为游戏服务器端开发的基本大纲,是游戏实践开发中的总结。第一部分专业基础,用于指导招聘和实习考核, 第二部分游戏入门,讲述游戏服务器端开发的基本要点,第三部分服务端架构,介绍架构设计中的一些基本原则。希望能帮到大家一 专业基础1.1 网络1.1.1 理解TCP/IP协议网络传输模型滑动窗口技术建立连接的三次握手与断开连接的四次握手连接建立与断开过程中的各

2017-01-03 13:38:18 13745 5

转载 C++11特性:decltype关键字

decltype简介我们之前使用的typeid运算符来查询一个变量的类型,这种类型查询在运行时进行。RTTI机制为每一个类型产生一个type_info类型的数据,而typeid查询返回的变量相应type_info数据,通过name成员函数返回类型的名称。同时在C++11中typeid还提供了hash_code这个成员函数,用于返回类型的唯一哈希值。RTTI会导致运行时效率降低,且在泛型编程

2016-12-30 16:53:42 426

转载 __VA_ARGS__用法

自定义调试信息的输出  调试信息的输出方法有很多种,  例如直接用printf,  或者出错时使用perror, fprintf等将信息直接打印到终端上, 在Qt上面一般使用qDebug,而守护进程则一般是使用syslog将调试信息输出到日志文件中等等...  使用标准的方法打印调试信息有时候不是很方便,  例如Qt编程, 在调试已有的代码时, 我想在打印调试信息的地方, 把代码位

2016-12-30 16:22:48 486

原创 组装字符串

767 //组装字符串,str is char*768 #define GEN_STR(str,...) \769     do{\770         memset(str, 0, sizeof(str));\771         snprintf(str, sizeof(str), __VA_ARGS__);\772     }while(0)773774 //

2016-12-30 16:04:44 621

转载 Linux查找含有某字符串的所有文件

如果你想在当前目录下 查找"hello,world!"字符串,可以这样: grep -rn "hello,world!" * * : 表示当前目录所有文件,也可以是某个文件名-r 是递归查找-n 是显示行号-R 查找所有文件包含子目录-i 忽略大小写下面是一些有意思的命令行参数: grep -i pattern files :不区分大小写地搜索。默认情况

2016-12-30 15:22:27 250

转载 线程安全与可重入函数

线程安全:一个函数被称为线程安全的(thread-safe),当且仅当被多个并发进程反复调用时,它会一直产生正确的结果。如果一个函数不是线程安全的,我们就说它是线程不安全的(thread-unsafe)。我们定义四类(有相交的)线程不安全函数。第1类:不保护共享变量的函数将这类线程不安全函数变为线程安全的,相对比较容易:利用像P和V操作这样的同步操作来保护共享变量。这个方法的优点是

2016-12-29 09:28:55 312

原创 printf系列和vprintf系列库函数详解

先从库里面把函数模型弄出来看看:#include  int printf(const char *format, ...);  int fprintf(FILE *stream, const char *format, ...);  int sprintf(char *str, const char *format, ...);  int snprintf(char *str

2016-12-28 13:38:57 2408

转载 【STL】algorithm算法介绍

STL算法部分主要由头文件,,组成。要使用 STL中的算法函数必须包含头文件,对于数值算法须包含,中则定义了一些模板类,用来声明函数对象。    STL中算法大致分为四类:        1、非可变序列算法:指不直接修改其所操作的容器内容的算法。        2、可变序列算法:指可以修改它们所操作的容器内容的算法。        3、排序算法:包括对序列进行排序和合并的算法、搜索

2016-12-26 10:00:49 784

转载 algorithm库函数——sort()和partition()

你发现有sort和stable_sort,还有 partition 和stable_partition, 感到奇怪吧。其中的区别是,带有stable的函数可保证相等元素的原本相对次序在排序后保持不变。或许你会问,既然相等,你还管他相对位置呢,也分不清 楚谁是谁了?这里需要弄清楚一个问题,这里的相等,是指你提供的函数表示两个元素相等,并不一定是一摸一样的元素。例如,如果你写一个比较函数:

2016-12-26 09:43:11 836

转载 C++中四种类型转换方式

1.static_cast最常用的类型转换符,在正常状况下的类型转换,如把int转换为float,如:int i;float f; f=(float)i;或者f=static_cast(i);1.基类和子类之间的转换:子类指针转换成父类是指针是安全的;但父类指针转换成子类指针是不安全的。2.基本数据类型转换,如enum,struct,int,char,float等。 

2016-12-23 16:49:32 1097

转载 【STL】multimap

标准库还定义了一个 multimap 容器,它与 map 类似,所不同的是它允许重复键。这个属性使得 multimap 比预想的要更有用:比如在电话簿中相同的人可以有两个以上电话号码,文件系统中可以将多个符号链接映射到相同的物理文件,或DNS服务器可以将几个URLs映射到相同的IP地址。在这些场合,你可以象下面这样:// 注: 伪码 multimap phoneboo

2016-12-23 15:50:39 261

转载 【STL】set

1.关于setC++ STL 之所以得到广泛的赞誉,也被很多人使用,不只是提供了像vector, string, list等方便的容器,更重要的是STL封装了许多复杂的数据结构算法和大量常用数据结构操作。vector封装数组,list封装了链表,map和set封装了二叉树等,在封装这些数据结构的时候,STL按照程序员的使用习惯,以成员函数方式提供的常用操作,如:插入、排序、删除、查找等。让

2016-12-23 14:49:44 271

转载 C++ STL 一般总结

一、一般介绍      STL(Standard Template Library),即标准模板库,是一个具有工业强度的,高效的C++程序库。它被容纳于C++标准程序库(C++ Standard Library)中,是ANSI/ISO C++标准中最新的也是极具革命性的一部分。该库包含了诸多在计算机科学领域里所常用的基本数据结构和基本算法。为广大C++程序员们提供了一个可扩展的应用框架,高

2016-12-23 09:54:24 320

转载 OSI七层模型详解

OSI 七层模型通过七个层次化的结构模型使不同的系统不同的网络之间实现可靠的通讯,因此其最主要的功能就是帮助不同类型的主机实现数据传输 。完成中继功能的节点通常称为中继系统。在OSI七层模型中,处于不同层的中继系统具有不同的名称。   一个设备工作在哪一层,关键看它工作时利用哪一层的数据头部信息。网桥工作时,是以MAC头部来决定转发端口的,因此显然它是数据链路层的设备。

2016-12-22 17:46:36 301

原创 technical words study

eliminate 淘汰,清除subject to 服从...optimizations 优化  optimize aligned 对准的,均衡的tutorial  个别辅导时间; 教程,辅导材料; 使用说明书; 辅导课;decent 正派的; 得体的; (服装等) 相称的,合宜的; 相当好的minor 较小的,少数的,未成年人,选修invoke 祈求,提出...以证明

2016-12-22 14:55:08 447

转载 Specifying Attributes of Variables

The keyword __attribute__ allows you to specify special attributes of variables or structure fields. This keyword is followed by an attribute specification inside double parentheses. Some attributes

2016-12-22 14:40:50 381

转载 Built-in Functions Provided by GCC

GCC provides a large number of built-in functions other than the ones mentioned above. Some of these are for internal use in the processing of exceptions or variable-length argument lists and are not

2016-12-22 14:38:10 1937 1

转载 __builtin_expect详解

在GTK+2.0源码中有很多这样的宏:G_LIKELY和G_UNLIKELY。比如下面这段代码:if (G_LIKELY (acat == 1))     /* allocate through magazine layer */    {      ThreadMemory *tmem = thread_memory_from_self();      guint ix

2016-12-22 13:29:43 752 1

转载 Common Predefined Macros

The common predefined macros are GNU C extensions. They are available with the same meanings regardless of the machine or operating system on which you are using GNU C or GNU Fortran. Their names all

2016-12-22 11:14:57 323

转载 __attribute__详解

GNU C的一大特色(却不被初学者所知)就是__attribute__机制。__attribute__可以设置函数属性(Function Attribute)、变量属性(Variable Attribute)和类型属性(Type Attribute)。 __attribute__书写特征是:__attribute__前后都有两个下划线,并切后面会紧跟一对原括弧,括弧里面是相应的__attr

2016-12-22 10:39:43 767

转载 gcc的__attribute__编译属性

要了解Linux Kernel代码的分段信息,需要了解一下gcc的__attribute__的编绎属性,__attribute__主要用于改变所声明或定义的函数或数据的特性,它有很多子项,用于改变作用对象的特性。比如对函数,noline将禁止进行内联扩展、noreturn表示没有返回值、pure表明函数除返回值外,不会通过其它(如全局变量、指针)对函数外部产生任何影响。但这里我们比较感兴趣的是对代

2016-12-22 09:39:19 4341

原创 关于宏的一些实际偷巧伎俩

通常我们都知道宏就是在预编译的时候进行原封不动的替换,所以对于一些函数有较大的相似度时,我们可以使用宏去进行一些取巧。 1.#define PB_BEGIN(sqlstr, item_list, item_type, name) \ 89 { \ 90 MYSQL_RES *res;\ 91 MYSQL_ROW row;\ 92 this->db->id=

2016-12-22 09:25:49 355

转载 MySql避免重复插入记录方法(ignore,Replace,ON DUPLICATE KEY UPDATE)

案一:使用ignore关键字如果是用主键primary或者唯一索引unique区分了记录的唯一性,避免重复插入记录可以使用: 代码如下复制代码1 INSERT IGNORE INTO `table_name` (`email`, `phone`, `user_id`) VALUES ('[email protected]', '99999', '9999

2016-12-21 16:18:36 344

转载 __stdcall、__cdcel和__fastcall三者的区

__stdcall、__cdecl和__fastcall是三种函数调用协议,函数调用协议会影响函数参数的入栈方式、栈内数据的清除方式、编译器函数名的修饰规则等。如下图所示,可以在IDE环境中设定所有函数默认的调用协议,还可以在函数定义时单独设定本函数的调用协议。调用协议常用场合__stdcall:Windows API默认的函数调用协议。__cdecl:C/C++默

2016-12-21 15:21:31 301

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除