`
文章列表

C++引用计数

主要参考《提高C++性能的编程技术》第12章 引用计数   设计思路 1. rc.h中: (1) 提供RCObject,内部封装了refCount及其基本加减操作; (2) 提供RCPtr,是一个智能指针。普通的智能指针内部封装一个基本类型的指针,但这里的智能指针内部封装的是指向RCObject类型的指针。因此,这个智能指针可以根据RCObject维护的引用计数变量refCount来实现引用计数的优势,如:        “赋值时复用”:在赋值操作时,只用refCount++即可复用已经在堆上创建好的原有实例;        “自动释放”: 在引用计数refCount==0时, ...
参考文档:http://blog.csdn.net/mylxiaoyi/article/details/4258508 一、线程        Linux进程可以协作,可以发送消息,也可以中断另一个进程。他们甚至可以在彼此之间共享内存段,但是在操作系统内部他们却是完全不同的实体。他们并不能共享变量。       在许多Unix系统与Linux系统还有另一类名为线程的进程。线程在某些程序中具有巨大的价值,例如多线程数据库服务器,然而线程很难进行编程。Linux上的线程编程并不如使用多进程那样常见,因为Linux的进程是轻量级的,而且多个协作进程的编程要比线程编程容易得多。我们会在第 ...
转自: http://www.cnblogs.com/visayafan/archive/2011/11/27/2265400.html Table of Contents 1 模板参数推导在迭代器中的使用 2 模板参数引用与非引用的区别 1 模板参数推导在迭代器中的使用 在算法中运用迭代器时,可能会用到其相 ...
  char *strtok(char *str1, char *str2);  strtok()用来将字符串分割成一个个片段。参数s指向欲分割的字符串,参数delim则为分割字符串,当strtok()在参数s的字符串中发现到参数delim的分割字符时则会将该字符改为\0 字符。在第一次调用时,strtok()必需给予参数s字符串(此时返回分割符前面的字符串),往后的调用则将参数s设置成NULL(返回分隔符后的字符串)。每次调用成功则返回被分割出片段的指针,当没有被分割的串时则返回NULL。   注意:会忽略掉连续的分隔符 下面程序输出为: [abc] [d]   #inc ...
Abstract Introduction size_t type ptrdiff_t type Portability of size_t and ptrdiff_t
一、new 和 delete 的过程: 在进行一切讲解之前,首先,要了解两点: 第一, new 和delete都是C++中的关键字 第二, new不能被重载,它的行为总是一致的(delete相同,顺序相反):            (1) 先调用operator new分配内存             (2) 在调用构造函数初始化那段内存中的对象             (3) 返回相应指针   二、new , operator new 和 placement new的关系   1. new : 不能被重载,它的行为总是一致的(delete相同,顺序相反):         ...
参考文档: http://docs.python.org/2/library/struct.htmlhttp://blog.163.com/ws__fyy/blog/static/12243381720123181013666/http://blog.163.com/kongdelu2009@yeah/blog/static/1119952072009102562126194/   # -*- coding: utf-8 -*- import struct import sys import os ''' 1. Byte order, Size, Alignment -- ...
1. 环境准备 (1) vmware workstation上启动两台虚拟机 rhel5.0 server i386, 每台都有网卡,且配置为NAT方式(因为在学校做实验,用学校的DHCP设备分配IP需要学号/密码验证,而我只有一个学号密码,用Bridge方式只能分配一个IP;故只能采用NAT方式,因为这种方式的DHCP服务器上宿主物理机上虚拟出来的) (2) 设置网卡配置文件以DHCP方式获取到IP地址 cat /etc/sysconfig/network-scripts/ifcfg-eth0 DEVICE=eth0 ONBOOT=yes BOOTPROTO=dhcp (3) ...

python正则

参见《深入Python 3》 Chapter 5. 正则表达式: http://woodpecker.org.cn/diveintopython3/regular-expressions.html   以下是摘要: # -*- coding=utf-8 -*- import re s1 = '100 BROAD ROAD APT. 3' s2 = '100 BROAD ROAD' # 1. python正则时,建议用原始字符串 # 2. re.sub() # 仅将最后的独立ROAD字符串替换掉 print re.sub(r'\bROAD$', 'RD.', ...

python下载

  自动下载Dive into Python 3网页及其相关链接 # -*- coding=utf-8 -*- import os import urllib import re #1. 下载种子;从指定种子网页开始自动下载,递归下载有效链接 source_link = 'http://woodpecker.org.cn/diveintopython/toc/index.html' f = open(source_link.split("/")[-1], 'w') print 'save to file : ', os.getcwd() pag ...

CPU历史

读书笔记:     1.总线分类(根据总线和CPU之间的关系)—— 内部总线:直接与CPU连接 外部总线(即系统总线):通过北桥与处理器连接   详见http://baike.baidu.com/view/771591.htm   2.

python面向对象

 明天从这里继续: http://woodpecker.org.cn/diveintopython/object_oriented_framework/private_functions.html    分析这段代码 __author__ = "Mark Pilgrim (mark@diveintopython.org)" __version__ = "$Revision: 1.3 $" __date__ = "$Date: 2004/05/05 21:57:19 $" __copyright__ = "C ...

python file

  打开文件file_handler = open(filename,mode) open(filename[, mode[, bufsize]]) Open a file, returning an object of the file type described in section File Objects. If the file cannot be opened, IOError is raised. When opening a file, it’s preferable to use open() instead of invoking the file cons ...

C/C++柔性数组 char[0]

 
在标准C和C++中0长数组如charArray[0]是不允许使用的,因为这从语义逻辑上看,是完全没有意义的。但是,GUN中却允许使用,而且,很多时候,应用在了变长结构体中,如:StructPacket{Int state;Int len;Char cData[0]; //这里的0长结构体就为 ...
fasfasfaws
Global site tag (gtag.js) - Google Analytics