- 博客(16)
- 资源 (63)
- 收藏
- 关注
原创 C++时间函数简单记录
1,计时函数clock_t clock ( void );返回从“开启这个程序进程”到“程序中调用clock()函数”时之间的时钟计时单元(clock tick)数。头文件:或者#ifndef _CLOCK_T_DEFINEDtypedef long clock_t;#define _CLOCK_T_DEFINED#endif将clock_t转换成秒的操作seco
2012-07-30 18:36:12 482
原创 《C++标准程序库》读书笔记 2012-07-30 vector缩减容量
《C++标准程序库》p150介绍vector容器的章节提到一种缩减vector容量的方法,在此记录一下#include #include #include templatevoid shrinkCapacity(std::vector& v) { std::vector tmp(v); // copy elements into a new vector v.swap(
2012-07-30 10:46:16 491
原创 bdb btree 替换记录
根据《BerkeleyDB-Core-Cxx-GSG.pdf》对于支持sorted duplicates的btree,替换重复record的data,会因为排序规则导致替换失败。文章中说明对于这种btree,若想替换重复record的data,需要先删除然后在put新记录。示例代码:#include #include #include "print.hh"#define
2012-07-29 23:13:39 433
原创 bdb 使用cursor插入重复记录
写记录示例:#include #include "db_cxx.h"#define DATABASE "duplicated.db"#define PUT_RECORDS(keystr, datastr, cursorp, flag) \ do { \ Dbt key(keystr, strlen(keystr) + 1); \ Dbt data(datastr, st
2012-07-29 16:08:33 576
原创 《C++标准程序库》读书笔记 2012-07-26 map插入元素常用方法
书中在p203页提到,在map中插入元素有三种方法,其实就一种都是构造一个pair。 如下三种方法:std::map col1;col1.insert(std::map::value_type(1, 1));col1.insert(std::pair(1, 1));col1.insert(std::make_pair(1, 1));这种三种调用方式,最终都是调用map父
2012-07-26 07:50:39 1193
原创 stl map资源释放
最近项目中频繁用到map容器,以及参考《C++标准程序库》发现对于map容器,若要立即清空map,并归还内存给OS,可以使用如下宏:template inline void map_slim_release(TMap& m) { std::map().swap(m);}即将该map与一个无指针指向的空map互换内存空间。
2012-07-26 02:13:27 1286
原创 stl map erase元素
调用erase()移除map中的元素,《C++标准程序库》提供了一个示例,在此记录以下:#include #include #include "print.hpp"int main(){ std::map col1; col1.insert(std::make_pair(1, 1)); col1.insert(std::make_pair(2, 2)); PRINT
2012-07-26 00:53:26 385
原创 对map使用find_if()
根据《C++标准程序库》中描述,对于map的find()成员函数,可以用来搜寻拥有某个key的第一个元素,但是不能搜寻持有某特定value的元素。如果搜寻某特定value,需要使用find_if(),或者循环遍历。以下示例如何使用find_if():#include #include #include #include typedef std::map map_t
2012-07-25 08:07:42 1853
原创 ACE ipv4地址转换示例
#include "ace/OS.h"#include #include //主机字节序int转换为ipv4字符串地址inline std::string int2ip(unsigned long ip){ char buf[20]; ip = htonl(ip); return ACE_OS::inet_ntop(AF_INET, &ip, buf, 20);}// i
2012-07-22 16:58:40 629
原创 VS2003.NET PCLint工程
设置三个自定义工具菜单:CreateLntFileLintFileLintFileNoProject每个路径对应对应三个输入项: Command, Arguments, Initial directory依次如下:CreateLntFileCommand D:\pclint\LINT-NT.EXEArguments
2012-07-18 09:34:59 529
原创 《C++标准程序库》读书笔记 2012-07-14 推荐前置式递增或者递减
在使用iterator的过程中,推荐前置式递增或者递减。书中是这样描述的,对于前置式递增(preincrement)++pos,比后置式递增(postincrement)pos++效率高。后者需要一个额外的临时对象,因为它必须存放迭代器的原本位置并将其返回,所以一般情况下最好使用++pos,不要用pos--从stl的源码可以对上述建议进行佐证:const_iterato
2012-07-14 03:18:03 417
原创 《C++标准程序库》读书笔记 2012-07-13 max辅助函数
书中提到当使用不同的类型调用max函数时,要声明参数类型,如下:inti;long l;l = std::max(i, l) //OK
2012-07-13 06:20:07 450
原创 《C++标准程序库》读书笔记 2012-07-12 auto_ptr_ref记录
正常情况下,一个类别的copy构造和赋值是需要使用const T&,因为auto_ptr本身copy构造和赋值的特殊性,只能使用T&,不能使用const T&,否则无法转移ownership,源码如下: auto_ptr(auto_ptr& _Right) _THROW0() : _Myptr(_Right.release()) { // construct by assu
2012-07-12 00:32:22 383
原创 《C++标准程序库》读书笔记 2012-07-08 auto_ptr 作为参数传递
《C++标准程序库》中说明auto_ptr当需要作为参数传递时,安全的方式是使用const T&方式分析如下:对于使用by value方式传递,不管使用T或者const T,ownership都会改变对于使用by reference,若仅仅使用T&,虽然传参的时候没有改变ownership,但是在函数内部用户却可以随便改变ownership援引书中的示例:templ
2012-07-08 13:44:26 556
原创 《C++标准程序库》读书笔记 2012-07-07 auto_ptr 禁止隐式转换
《C++标准程序库》4.2.1和4.2.2节描述auto_ptr不允许隐式转换,如下所示:#include std::auto_ptr ptr1(new ClassA); //OKstd::auto_ptr ptr2 = new ClassA; //ERRORauto_ptr可以拿来当作另外一个auto_ptr的初值,如上所示普通指针是不行的查看auto_ptr的声
2012-07-07 09:22:52 316
原创 《Corba原理及应用》第四章 读书笔记之Orbix 编译demos
安装好Orbix6.3之后,可以编译安装包中的demos。编译步骤如下:1,需要安装C++开发环境,本机安装VS.NET 20032,打开命令行窗口,准备执行nmake.exe进行编译,该程序在D:\Program Files\Microsoft Visual Studio .Net 2003\Vc7\bin中,需要将该目录添加到环境变量PATH中,接下来需要运行VS.
2012-07-01 18:49:43 387
emacs常用配置.zip
2012-09-08
ailurus_10.10.1-0maverick1_all.deb
2012-09-08
ailurus_10.01.5-0ppa1_all.deb
2012-09-08
winscp439.rar
2012-07-26
xiaomi_usb_driver.rar
2012-06-04
AcronisDiskDirector10.rar
2012-04-22
MTPuTTY 1.3 Beta - 带标签的PuTTY
2011-12-22
FileZilla Client 和 Server安装程序包
2011-08-04
More Effective C++_中文版CHM
2011-03-09
VC显示行号_VC6LineNumberAddin.rar
2011-03-09
lsof_1106-4.80-sol10-sparc.rar
2010-12-28
lsof_0508-4.80-sol10-sparc-local.gz
2010-12-28
lsof_1106-4.80-sol10-sparc-local.gz
2010-12-27
QTTabBar_1.2.1.3_glb.zip
2010-07-21
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人