显示下一条  |  关闭

时光印记

过一种充满生命力的、怀着爱意的生活,一种高高兴兴、简单明了的生活。

 
 
 
 

日志分类

 
 
日志分类列表加载中...
 
 
 
 
 
 
 

海外 美国 狮子座

 发消息  写留言

 
博客等级加载中...
今日访问加载中...
总访问量加载中...
最后登录加载中...
 
 
 
 
 

自定义模块

 
 
模块内容加载中...
 
 
 
 
 
 
 
心情随笔列表加载中...
 
 
 
 
 
 
 
日志评论
评论列表加载中...
 
 
 
 
 
 
 
我的关注列表加载中...
 
 
 
 
 
 
 
 

C++成员函数指针的应用

2012-5-16 10:52:47 阅读1 评论0 162012/05 May16

C++成员函数指针的应用 摘自: www.chinaitlab.com  被阅读次数: 411

yangyi 于 2011-01-21 22:50:47 提供

  C++中,成员指针是最为复杂的语法结构。但在事件驱动和多线程应用中被广泛用于调用回叫函数。在多线程应用中,每个线程都通过指向成员函数的指针来调用该函数。在这样的应用中,如果不用成员指针,编程是非常困难的。

  刚遇到这种语法时也许会让你止步不前。但你会发现,使用恰当的类型定义之后,复杂的语法是可以简化的。本文引导你了解成员函数指针的声明,赋值和调用回叫函数。

  成员函数指针的声明

  一个成员函数指针包括成员函数的返回类型,后随::操作符类名,指针名和函数的参数。初看上去,语法有点复杂。其实可以把它理解为一个指向原函数的指针,格式是:函数返回类型,类名,::操作符,指针星号,指针名,函数参数。

  一个指向外部函数的指针声明为:

  void (*pf)(char *, const char *);

  void strcpy(char * dest, const char * source);

作者  | 2012-5-16 10:52:47 | 阅读(1) |评论(0) | 阅读全文>>

常见content-type

2012-5-14 12:45:13 阅读2 评论0 142012/05 May14

text/plain(纯文本)text/html(HTML文档)application/xhtml+xml(XHTML文档)image/gif(GIF图像)image/jpeg(JPEG图像)【PHP中为:image/pjpeg】image/png(PNG图像)【PHP中为:image/x-png】video/mpeg(MPEG动画)application/octet-stream(任意的二进制数据)application/pdf(PDF文档)application/msword(Microsoft Word文件)message/rfc822(RFC 822形式)multipart/alternative(HTML邮件的HTML形式和纯文本形式,相同内容使用不同形式表示)application/x-www-form-urlencoded(使用HTTP的POST方法提交的表单)multipart/form-data(同上,但主要用于表单提交时伴随文件上传的场合)

作者  | 2012-5-14 12:45:13 | 阅读(2) |评论(0) | 阅读全文>>

2012年05月07日

2012-5-7 14:32:26 阅读4 评论0 72012/05 May7

东信和平智能卡股份有限公司

https://www.google.com.hk/finance?q=%E4%B8%9C%E4%BF%A1%E5%92%8C%E5%B9%B3%E6%99%BA%E8%83%BD%E5%8D%A1%E8%82%A1%E4%BB%BD%E6%9C%89%E9%99%90%E5%85%AC%E5%8F%B8&hl=zh-CN

东信和平智能卡股份有限公司是专业从事智能卡产品及其相关设备研发、生产、销售的国家火炬计划重点高新技术企业,成立于1998年,公司的产品主要包含卡 类、读写终端类、应用工具类和系统集成等产品系列。其中卡类产品是公司目前的主导产品,包括接触式智能卡、非接触式智能卡、双界面卡、磁条卡以及刮刮卡 等。业务范围涉足移动通信、电信、身份识别、社会保障、金融、交通等多个智能卡应用领域。

北京握奇数据系统有限公司

http://www.watchdata.com.cn/

北京握奇数据系统有限公司成立于1994年,总部设在北京,员工人数1800人。目前,握奇已拥有新加坡,美国、墨西哥、法国、印度,意大利,巴基斯坦等11个海外分支机构,其全系列产品和解决方案已经广泛应用到全球50余个国家和地区。

作为全球领先的数据安全解决方案提供商,握奇一直专注于数据安全与认证技术、安全芯片操作系统的研发,为电信、交通、金融、政府、企业等领域提供智能卡、USB Key、读卡器、平台、密钥系统等安全产品以及跨行业融合型产品和方案。

作者  | 2012-5-7 14:32:26 | 阅读(4) |评论(0) | 阅读全文>>

了解Instagram背后的技术

2012-5-7 12:02:04 阅读4 评论0 72012/05 May7

在设计系统时,Instagram的设计哲学是简单、为最小化运维负担进行优化并监控一切内容;其核心原则是保持简单,不要重复发明轮子,尽可能使用经过验证、稳定可靠的技术。

大多数数据都存放在PostgreSQL里,主分片集群运行于12个High-Memory Quadruple Extra-Large Instance(68.4GB内存)上,另有12个位于不同可用区里的副本,通过repmgrStreaming Replication的方式进行同步。由于Elastic Block Store的磁盘IOPS不高,因此需要将正在使用的数据都加载到内存里,vmtouch能帮助管理内存中的数据。他们在EBS上使用mdadm实现了软件Raid,以此提升写吞吐量;数据库的文件系统用的是XFS,在从库获取快照时,会先冻结RAID阵列,保证快照的一致性。

应用程序在连接数据库时,由

作者  | 2012-5-7 12:02:04 | 阅读(4) |评论(0) | 阅读全文>>

MS VC++预定义宏

2012-5-6 23:28:21 阅读6 评论0 62012/05 May6

Predefined Macros

Visual Studio 2005

Other Versions

34 out of 54 rated this helpful - Rate this topic

Names the predefined ANSI C and Microsoft C++ implementation macros.

The compiler recognizes predefined ANSI C macros and the Microsoft C++ implementation provides several more. These macros take no arguments and cannot be redefined. Some of the predefined macros listed below are defined with multiple values. See the following tables for more information.

ANSI-Compliant Predefined Macros

作者  | 2012-5-6 23:28:21 | 阅读(6) |评论(0) | 阅读全文>>

POCO 新版本即将发布

2012-5-6 20:43:53 阅读4 评论0 62012/05 May6

After many months of absence and low-level involvement with the project (for personal and professional reasons), I am back. We also have commitment from two other community members (Marian Krivos and Franky Braem) to help significantly with the project. For starters, Marian has retired old and I have just committed brand new trunk code. For the time being, it was only built on Windows, but we’ll have other builds ready within the next week or two.

Most significant new features are:

DynamicAny

作者  | 2012-5-6 20:43:53 | 阅读(4) |评论(0) | 阅读全文>>

UDP协议在GPRS私网和INTERNET公网的数据交换

2012-4-14 8:48:18 阅读11 评论0 142012/04 Apr14

用一个简图简单解释一下这UDP协议数据交换的问题。

DTU(内网地址10.0.0.1)==(移动内网)====>NAT===(外网公网)===>服务器(公网地址:55.0.0.24)

其中NAT有两个地址,其一是内网地址(比如说是10.0.0.2),其二是外网地址(比如说是1.1.1.1)

     (移动内网)====>(10.0.0.2)NAT(1.1.1.1)====>(外网公网)

包交换过程如下:

DTU发出的数据包是:

src:10.0.0.1 dst:55.0.0.24

这个包发给NAT。

以下假设服务器侦听在UDP 2400端口。

其中NAT有两个地址,其一是内网地址(比如说是10.0.0.2),其二是外网地址(比如说是1.1.1.1)

     (移动内网)====>(10.0.0.2)NAT(1.1.1.1)====>(外网公网)

包交换过程如下:

DTU发出的数据包是:

src:10.0.0.1:1001 dst:55.0.0.24:2400

这个包发给NAT。

NAT对此包作了转换,进行源地址和端口的替换,发到公网,公网上传的这个包变成了

src:1.1.1.1:1111 dst:55.0.0.24:2400

作者  | 2012-4-14 8:48:18 | 阅读(11) |评论(0) | 阅读全文>>

在线视频王者YouTube的技术哲学

2012-4-10 23:52:45 阅读13 评论0 102012/04 Apr10

导读:许多团队都使得他们的基础架构越来越复杂,YouTube团队却尽量保持简单的风格。正是凭借简单的技术哲学,才成就了YouTube在线视频王者的盛名。

如果你想构建一个可以承载日访问量40亿次的网站,YouTube有许多值得借 鉴的地方。本文是YouTube的工程师Mike Solomon在PyCon(PyCon是Python开源社区的开发者年度盛会)上关于YouTube扩展性演讲的摘要,相信会对大家有所启发。

许多团队都使得他们的基础架构越来越复杂,YouTube团队却尽量保持简单的风格。他们使用Python作为主要开发语言,使用MySQL开源数据库,并一直使用Apache作为Web服务器。对一个如此庞大的站点而言,许多重要特性都源于点点滴滴的Python代码。

这并不意味着YouTube不追求创新,他们更追求一种技术哲学,而非炒作。究竟是什么成就了世界上最大的视频网站?敬请阅读。

惊人的数字

日访问量40亿次 每分钟上传60小时的视频 超过3.5亿终端访问 利润是2010年收入的双倍 视频的数量上升了9个数量级,开发人员却只上升了2个数量级 一百万行Python代码

软件架构

Python:Python是YouTube的主要编程语言。 Apache:YouTube一直使用Apache,每次HTTP请求都经由Apache。 Linux:Linux是构建YouTube的基石,它有许多强大的工具,如strace何tcpdump。 MySQL:MySQL有庞大的用户群。YouTube使用它的关系数据库特性,也使用它存储BLOB数据。

作者  | 2012-4-10 23:52:45 | 阅读(13) |评论(0) | 阅读全文>>

Lua文件操作例子

2012-2-14 23:42:00 阅读184 评论0 142012/02 Feb14

一。文件读存:

-- 似乎不支持大文件(不能超过9k?):

function opensavetest()

   local file = io.open("c:\\in.lua", "r");

   if(file) then

   local data = file:read("*a"); -- i've also tried "*all" as described in PIL

   file:close();

   file = io.open("c:\\out.lua", "w");

   if(file) then

   file:write(data);

   file:close();

   end

   end

end

opensavetest();

二。非循环表格处理(见program in lua):

HERO = 1  Monster = 2  Building = 3 SumUnit = 4

cha = {}

cha[1] =

作者  | 2012-2-14 23:42:00 | 阅读(184) |评论(0) | 阅读全文>>

Notepad++正则表达式

2012-2-14 21:37:34 阅读121 评论0 142012/02 Feb14

因为Notepad++项目是基于另一个开源编辑器Scintilla,所有关于Scintilla 的正则表达式也同样适用Notepad++。

第一部分:要开始用正则表达式前,必须了解特殊字符列

正则表达式的特殊字符列表如下:



    匹配任意字符



    标记域的开始符(具体使用可参见例子)



    标记域的结束符(具体使用可参见例子)

\n

    n可以是1到9 代表正在替换的第一到第九的标记域

\<

    匹配Scintilla定义的单词的开始

\>

    匹配Scintilla定义的单词的结束

\x

    转义符. 例如, \[ 表示 [ 而不是字符集(character set)的开始符.

[...]

    字符集(character set), 例如, [abc] 代表字符 a, b or c. 也可以使用范围, 如 [a-z] 代表所有小写字母

[^...]

作者  | 2012-2-14 21:37:34 | 阅读(121) |评论(0) | 阅读全文>>

2012年02月13日

2012-2-13 23:05:27 阅读28 评论0 132012/02 Feb13

1、ICEE_HAS_ROUTER needs to be defined in include/IceE/Config.h

2、you make sure you explicitly set the -h parameter in your endpoint and proxy configuration. Your problem might be cause by the fact that without a -h parameter present Ice will listen on all local interfaces.

3、Sample code:

communicator = Ice.Util.initialize(new String[0]);

router = Glacier2.RouterPrxHelper.checkedCast(communicator. stringToProxy(proxyRouter));

if(router != null)

{

communicator.setDefaultRouter(router);

properties = communicator.getProperties();

properties.setProperty("Ice.ACM.Client","0");

properties.setProperty("Ice.ACM.Server","0");

作者  | 2012-2-13 23:05:27 | 阅读(28) |评论(0) | 阅读全文>>

Lua editors

2012-2-12 21:10:51 阅读47 评论0 122012/02 Feb12

Edit

While any text editor can edit Lua files, many contain additional Lua specific features.

See also

UI FAQ/AddOn Author Resources

Contents

1 Freeware2 Shareware3 Commercial4 External links Freeware Edit

WoWUIDesigner  Complete IDE for Lua and XML UI files, including intellisense for many WoW API functions - Windows XP/2000/2003/Vista Eclipse Eclipse + the Lua Development Tools plug-ins. For Windows,

作者  | 2012-2-12 21:10:51 | 阅读(47) |评论(0) | 阅读全文>>

协议数据单元 PDU

2012-2-11 9:13:27 阅读31 评论0 112012/02 Feb11

协议数据单元

维基百科,自由的百科全书

电信领域,术语协议数据单元(PDU,Protocol Data Unit)有以下几层意义。

网络的对等实体传送的信息单元,包括了控制信息,地址信息,或者数据。在协议系统里,在指定的协议层上传送的数据单元,包含了该层的协议控制信息用户信息。

OSI模型系统里,PDU和最底下四层相关。

物理层(一层)PDU指数据位(Bit)。数据链路层(二层)PDU指数据帧(Frame)。网络层(三层)PDU指数据包(Packet)。

作者  | 2012-2-11 9:13:27 | 阅读(31) |评论(0) | 阅读全文>>

Lua CRC lib

2012-2-11 8:33:07 阅读39 评论0 112012/02 Feb11

local crc=require "ul_crc"

local inp="ABC"

print(string.format("CRC16 = %2X",    crc.crc16_1wire(inp)))             --CRC16              = 0x4521

print(string.format("CRC16 (Modbus) = %2X",    crc.crc16_modbus(inp)))     --CRC16 (Modbus)     = 0x8550

print(string.format("CRC-CCITT (0x0000) =%2X",    crc.crc16_ccit(inp,0x0000)))--CRC-CCITT (0x0000) = 0x3994

print(string.format("CRC-CCITT (0xffff) =%2X",    crc.crc16_ccit(inp,0xFFFF)))--CRC-CCITT (0xffff) = 0xF508

作者  | 2012-2-11 8:33:07 | 阅读(39) |评论(0) | 阅读全文>>

firebird server optimization

2012-2-8 21:42:22 阅读21 评论0 82012/02 Feb8

作者  | 2012-2-8 21:42:22 | 阅读(21) |评论(0) | 阅读全文>>

查看所有日志>>

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

页脚

网易公司版权所有 ©1997-2012

   
创建博客 登录  
 关注