const相关

浅谈PDFlib中文输出(三)PDFlib 的几种文本输出函数

11-02
1.PDF_show void PDF_show(PDF *p, const char *text) void PDF_show2(PDF *p, const char *text, int len) 在当前坐标用当前字体及字体大小输出文本. PDF_show将认为字符串是以空字符结尾(NULL):若字符串有可能含有空字符(如多字节字符串),用PDF_show2. 2.PDF_show_xy void PDF_show_xy(PDF *p, const char *text, double x,

Linux中用于进程控制的exec函数族

10-18
1.简介 在Linux中,并不存在exec()函数,exec指的是一组函数,一共有6个,分别是: #include <unistd.h> extern char **environ; int execl(const char *path, const char *arg, ...); int execlp(const char *file, const char *arg, ...); int execle(const char *path, const char *arg, ..., cha

Linux中如何启动新进程

07-26
有时候,我们需要在自己的程序(进程)中启动另一个程序(进程)来帮助我们完成一些工作,那么我们需要怎么才能在自己的进程中启动其他的进程呢?在Linux中提供了不少的方法来实现这一点,下面就来介绍一个这些方法及它们之间的区别. 一.system函数调用 system函数的原型为: #include <stdlib.h> int system (const char *string); 它的作用是,运行以字符串参数的形式传递给它的命令并等待该命令的完成.命令的执行情况就如同在shell中执行命令:s

一个C++日期类(第二部分)

07-22
本文适合初级读者 Chuck Allison 是盐湖城圣 Latter Day 教堂总部下耶稣教堂家族历史研究处的软件体系设计师.他拥有数学学士和数学硕士学位.他从1975年起开始编程,从1984年起他开始从事c语言的教学和开发.他目前的兴趣是面向对象的技术及其教育.他是X3J16,ANSI C ++标准化委员会的一员.发送e-mail 到 [email protected],或者拨打电话到 (801)240-4510 均可以与他取得联系. 在上个月的封装中我提出了一个简单的C++日期类的雏形.

基于pthread

07-18
以下是对pthread_create,readlink,getpid等函数的用法进行了详细的分析介绍,需要的朋友可以参考下   pthread_create是UNIX环境创建线程函数     具体格式:   #include<pthread.h>   int pthread_create(pthread_t *restrict tidp,const pthread_attr_t *restrict attr,void*(*start_rtn)(void*),void *restrict arg

Flex中PureMVC学习小结

07-11
说明:本人是新手,很多不足的地方还希望大虾们不要拍我砖块,有错误的地方请指正,不胜感激,如要转载请指明出处,谢谢. Flex PureMVC 学习 最近迷上Flex,研究了以下pureMVC,就我的学习过程写出来,给一些和我一样的迷途羔羊一点经验吧.我的不是教程,只是自 己的学习过程. 首先,我会用一个Demo来说明我的学习过程. 分析: 1.选择自己需要进入的网站类型; 2.如果选择 Flex,哪么就需要登陆. 以上是我现在Demo的雏形. 注:pureMVC我就不讲了.不懂的可以去看相关的资

用C++封装MySQL的API的教程

05-07
  这篇文章主要介绍了用C++封装MySQL的API的教程,包括对语句拼装器SQLJoin的介绍,需要的朋友可以参考下 其实相信每个和mysql打过交道的程序员都应该会尝试去封装一套mysql的接口,这一次的封装已经记不清是我第几次了,但是每一次我希望都能做的比上次更好,更容易使用. 先来说一下这次的封装,遵守了几个原则,其中部分思想是从python借鉴过来的: 1.简单 简单,意味着不为了微小的效率提升,而去把接口搞的复杂.因为本身数据库存储效率的瓶颈并不是那一两次内存copy,代码中随处可以

高质量C++/C编程指南-第5章-常量

05-06
常量是一种标识符,它的值在运行期间恒定不变.C语言用 #define来定义常量(称为宏常量).C++ 语言除了 #define外还可以用const来定义常量(称为const常量). 5.1 为什么需要常量 如果不使用常量,直接在程序中填写数字或字符串,将会有什么麻烦? (1) 程序的可读性(可理解性)变差.程序员自己会忘记那些数字或字符串是什么意思,用户则更加不知它们从何处来.表示什么. (2) 在程序的很多地方输入同样的数字或字符串,难保不发生书写错误. (3) 如果要修改数字或字符串,则会在

使用typedef抑制劣质代码

04-22
摘要:Typedef 声明有助于创建平台无关类型,甚至能隐藏复杂和难以理解的语法.不管 怎样,使用 typedef 能为代码带来意想不到的好处,通过本文你可以学习用 typedef 避免 缺欠,从而使代码更健壮. typedef 声明,简称 typedef,为现有类型创建一个新的 名字.比如人们常常使用 typedef 来编写更美观和可读的代码.所谓美观,意指 typedef 能隐藏笨拙的语法构造以及平台相关的数据类型,从而增强可移植性和以及未来的可维护性 .本文下面将竭尽全力来揭示 typed

简介C++中的const

04-06
1.const 引用是指向 const 对象的引用: const int ival = 1024; const int &refVal = ival; // ok: both reference and object are const int &ref2 = ival; // error: non const reference to a const object 可以读取但不能修改 refVal.同理,用 ival 初始化 ref2 也是不合法的.ref2 是普通的非 const 引用

FMD开发文集 -- MFC CObject浅析

03-28
CObject是大部分的MFC类的基类 为了完成MFC类的判断.动态生成.序列化等特殊功能,CObject中添加了特定的处理. 为了进一步增强对MFC类对象的理解,在此对CObject源码及相关宏定义进行分析. (所附代码并非原始代码,为说明问题而作了删减.) 主要介绍了以下几方面内容: 1.CObject简要声明 2.CRuntimeClass结构 3.RUNTIME_CLASS 4.DYNAMIC支持 5.DYNCREATE支持 6.SERIAL支持 一.CObject简要声明 class

MFC教程(3)-- CObject类

03-25
CObject是大多数MFC类的根类或基类.CObject类有很多有用的特性:对运行时类信息的支持,对动态创建的支持,对串行化的支持,对象诊断输出,等等.MFC从CObject派生出许多类,具备其中的一个或者多个特性.程序员也可以从CObject类派生出自己的类,利用CObject类的这些特性. 本章将讨论MFC如何设计CObject类的这些特性.首先,考察CObject类的定义,分析其结构和方法(成员变量和成员函数)对CObject特性的支持.然后,讨论CObject特性及其实现机制. COb

mysql查询优化相关技巧

03-11
使用EXPLAIN语句检查优化器操作 +----+-------------+----------+-------+---------------+------+---------+------+------+----------------- | id | select_type | table | type | possible_keys | key | key_len| ref | rows | Extra +----+-------------+----------+-------+--

php命名空间的相关问题和技巧

02-28
 这篇文章主要介绍了php命名空间的相关问题和技巧,需要的朋友可以参考下 1.什么是命名空间? 命名空间是一种特殊的作用域,它包含处于该作用域下的标识符,同时它本身也是一种标识符.可以把命名空间与操作系统的目录对应起来.一个命名空间相当于一个目录,命名空间里的类,函数,常量,相当于目录里的文件.同一个目录(命名空间)里的文件名不能相同,但是不同的目录里可以有相同名字的文件. 2.使用命名空间为了解决什么问题? 解决名字冲突,比如定义了一个类,正好这个类与PHP内部的类或是include进来的一个

Thrift的TProtocol类体系原理及源码详解:类继承架构分析

02-15
这部分相关的类主要实现与协议相关的内容,这里说的协议是指对数据传输格式封装的协 议,实现不同的协议来适合不同场景下的数据传输,因为在不同的场景下不同协议对于数据 传输来说效率有很大的差别.下面是这个部分相关类的类关系图: 由以上类图可以发现所有的协议类都从TProtocol类直接或间接继承,每一个协议 类都有一个对应的生产对象工厂(协议工厂).TProtocol是一个抽象的类,不能直接使用的 ,它有一个直接子类默认实现了所有方法(空实现),如果我们需要定义自己的数据传输协 议可以直接从这个类继承

【.Net Micro Framework PortingKit – 12】SysTick驱动开发

02-06
SysTick驱动对TinyCLR来说非常重要,.Net Micro Framework系统的多线程和多任务(对托管代码来说是单任务多线程,但是还存在和托管代码同时运行的任务,如我们用MFDeploy程序Ping TinyCLR或擦写Flash 的时候,就是另外的任务在执行)就是靠它来实现的. SysTick驱动有三个功用,一是我们上面所说的多任务和多线程支持:二是获得系统当前Tick,以此实现延时等待,比如我们常见的Events_WaitForEvents函数就靠它来实现延时功能的:三是为Na

【.Net Micro Framework PortingKit – 09】串口驱动

02-06
虽然在PC机中,串口渐行渐远,但是在嵌入式领域,串口仍可以说是如日中天,因为它造价低廉.并且编程也比较方便,在没有显示屏或输入设备的系统上,串口更是不可或缺,和超级终端一道,共同解决了信息显示和输入问题. 经过这几天的努力,在Cortex-M3平台上的.Net Micro Framework的NativeSample移植工作就要一个段落了,目前已实现启动代码.SRAM.时钟(RCC).中断(NVIC).SysTick.GPIO.串口.NandFlash(FMSC)等相关功能,这些代码可以说是使T

【.Net Micro Framework PortingKit

02-06
要点亮LED灯或获得输入IO的状态应该是比较容易的,打开端口时钟,然后读写相关的GPIO寄存器就可以了,但是要实现一个输入中断,就要费些周折了. 对STM32(Cortex-M3)的芯片,要实现一个GPIO中断一般需要如下几步: 1.配置时钟控制器寄存器(RCC)的APB2RSTR,确保对应的GPIOA ~ GPIOG时钟使能. 2.对GPIO寄存器的CRL(或CRH)要设置正确的输入模式,如浮空输入模式(对接收IO中断来说,当然要设置成输入模式). 3.要通过AFIO寄存器配置中断的输入来源,

const相关-为什么一个const属性的返回值可以用 非const 型来接受呢?

02-05
问题描述 为什么一个const属性的返回值可以用 非const 型来接受呢? const int func() { int j = 8; return j; } int main() {int i = 5 ;i = func(); } 为什么可以翻译通过呢? 解决方案 const int func() 说明函数func()的返回值是一个常数,不想让对象再次被修改,因为const一定是先被初始化的 而在主函数中的:i = func(),只能说明是将一个常数值赋值给一个变量,很正常啊!!! 还不懂的

C++ POCO库中文编程参考指南(6) Poco::Timestamp

01-10
1 类型别名 三个时间戳相关的类型别名,TimeDiff表示两个时间戳的 差,第二个是以微秒为单位的时间戳,第三个是以 100 纳秒(0.1 微妙)为单 位的时间戳: typedef Int64 TimeDiff; /// difference between two timestamps in microseconds typedef Int64 TimeVal; /// monotonic UTC time value in microsecond resolution typedef In