![](https://img-blog.csdnimg.cn/20201014180756925.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
C++
文章平均质量分 70
yasaken
这个作者很懒,什么都没留下…
展开
-
Linux下内存映射文件的用法简介
由于项目需要,所以学习了一下Linux下内存映射文件的用法,在这里共享一下自己的收获,希望大家提出宝贵意见,进行交流。 简介: 内存映射文件与虚拟内存有些类似,通过内存映射文件可以保留一个地址空间的区域,同时将物理存储器提交给此区域,只是内存文件映射的物理存储器来自一个已经存在于磁盘上的文件,而非系统的页文件,而且在对该文件进行操作之前必须首先对文件原创 2012-02-02 17:08:43 · 14660 阅读 · 0 评论 -
Linux下字符串转时间tm结构函数strptime
原型:char *strptime(const char *buf,const char *format,struct tm *timeptr)buf: tm格式化后的C字符串(以0结尾);format: 字符串格式,构建方式与strftime的format字符串完全一样;struct tm *time原创 2012-04-05 17:52:17 · 23492 阅读 · 1 评论 -
Linux下Gtest测试框架应用实例
Gtest全称: Google C++ Testing Framework项目链接: http://code.google.com/p/googletest/Gtest是Google公司发布的一款非常优秀的开源C/C++单元测试框架,已被应用于多个开源项目及Google内部项目中,知名的例子包括ChromeWeb浏览器、LLVM编译器架构、ProtocolBuffers数据交换原创 2012-03-17 19:33:42 · 10363 阅读 · 1 评论 -
Linux下文件属性的获取
1. 数据结构和系统调用在Linux下进行C/C++编程,主要通过以下三个系统调用来获取文件(普通文件,目录,管道,socket,字符,块等)属性。头文件“#include ”(1) //通过文件名称获取文件属性int stat(const char *restrict pathname, struct stat *restrict buf); (2) //原创 2012-03-29 15:10:01 · 10717 阅读 · 2 评论 -
C/C++中的时间操作
1. 词汇解释Coordinated Universal Time(UCT)协调世界时,又称为世界标准时间,亦即格林威治标准时间(Greenwich Mean Time,GMT)。中国内地是UTC+8,美国是UTC-5。Calendar Time日历时间,是用“从一个标准时间点到此时的时间经过的秒数”来表示的时间。这个标准时间点对不同的编译器来说会有所不同,但对一个编译系统原创 2012-03-26 17:20:21 · 5911 阅读 · 1 评论 -
Observer模式Linux下的C++实现
Observer模式定义对象间的一对多的依赖关系,当一个对象的状态发生改变时,所有依赖于它的对象都得到通知并被自动更新。Observer模式定义的是一种一对多的关系,一是Subject类,而多则是Obesrver类,当Subject类的状态发生变化的时候通知与之对应的Obesrver类们也去相应的更新状态,同时支持动态的添加和删除Observer对象的功能。Subject类一般原创 2012-02-26 20:56:11 · 2447 阅读 · 0 评论 -
STL algorithm学习之adjacent_find()
adjacent_find()函数原型:template inline _FwdIt adjacent_find(_FwdIt _First, _FwdIt _Last) { // find first matching successor _ASSIGN_FROM_BASE(_First, _Adjacent_find(_CHECKED_BASE(_First), _C原创 2012-02-29 22:50:06 · 3463 阅读 · 0 评论 -
Singleton模式Linux下的C++实现
Singleton模式是最常用的设计之一,最近结合自己的实际应用,把Singleton作为模板抽象出来(线程安全),权当抛砖引用,欢迎大家提出批评意见,互相交流。下面为源码,已经编译运行过。Singleton 模板类#ifndef _Singleton_h_#define _Singleton_h_#include class Mutex{public: Mu原创 2012-02-22 20:54:54 · 2053 阅读 · 0 评论 -
string的大小写转换
将一个string转换成大写或者小写,是项目中经常需要做的事情,但string类里并没有提供这个方法。自己写个函数来实现,说起来挺简单,但做起来总让人觉得不方便。打个比方:早上起来想吃个汉堡,冰箱里有生牛肉,有面粉,也有微波炉,是可以自己做的,但是实在是太费事,没几个人愿意做。但是,打个电话给肯德基宅急送,10分钟后就有热乎乎的汉堡送上门了,大大节省了时间(时间就是金钱,你可以将时间用在更重要的开原创 2012-02-28 21:52:32 · 60399 阅读 · 4 评论 -
C++ const指针
C++中的const指针声明方式非常相似,平时很容易记混,今天差点弄错了,特意把用法回顾总结一下。const在*之前,表示内容不变 const char *p; //*p是const, p可变 char const *p; //*p是const, p可变const在*之后,表示指针不变 cha原创 2012-02-22 21:26:50 · 1620 阅读 · 1 评论 -
Linux下库文件学习(二)如何设置库的路径
最近在Linux下使用第三方库Protobuf时,遇到一个问题:编译出的可执行程序在运行时总报错:“error while loading shared libraries: libprotobuf.so.7: cannot open shared object file: No such file or directory”。于是花时间弄清楚原因,找到解决方案,跟大家共享一下。原创 2012-02-07 11:26:38 · 5122 阅读 · 0 评论 -
夏令时 DST 在Linux C/C++编程中的处理
上个礼拜,遇到一个问题:给美国的客户做的软件,测试是在去年冬天,一切顺利。前段时间,测试人员突然报了一个BUG,说他们配置了一个时间参数,输入的值是2013-03-27 22:30:00,但是在运行过程中,软件显示确却是2013-03-27 23:30:00,整整快了一个小时。但是别的时间,比如2013-01-27 22:30:00,却没有问题。当时想了想,立即觉得可能与夏令时有关系,原创 2013-03-31 12:07:36 · 10052 阅读 · 0 评论