C/C++
文章平均质量分 64
追逐
我很平凡,但我渴望成功;我一无所有,但我拒绝平庸
展开
-
静态、共享和动态库
C语言中有一些函数不需要进行编译,有一些函数也可以在多个文件中使用。一般来说,这些函数都会执行一些标准任务,如数据库输入/输出操作或屏幕控制等。可以事先对这些函数进行编译,然后将它们放置在一些特殊的目标代码文件中,这些目标代码文件就称为库。库文件中的函数可以通过连接程序与应用程序转载 2011-07-07 15:06:45 · 746 阅读 · 0 评论 -
显示构造函数
class int_array{public :int_array(unsigned int size);可以使用下面的语句创建这个类的一个实例:int_array example(10) ;也可以通过int_array example = 10这种智能的转换,如果你不希望出现这种转化,你可以告诉C++不要使用构造函数,准确的按照我说的去做,这时候就用到关键字expli原创 2011-12-07 10:56:20 · 929 阅读 · 0 评论 -
C++强制转换
C风格的强制类型转换(Type Cast)很简单,不管什么类型的转换统统是: TYPE b = (TYPE)a C++风格的类型转换提供了4种类型转换操作符来应对不同场合的应用。 const_cast,字面上理解就是去const属性。 static_cast,命名上理解是静态类型转换。如int转换成char。 d转载 2011-12-06 13:53:06 · 652 阅读 · 0 评论 -
C++中的const成员函数(函数声明后加const,或称常量成员函数)用法详解
在C++的类定义里面,可以看到类似下面的定义:01class List {02private:03 Node * p_head;04 int length;转载 2011-12-06 14:52:52 · 25416 阅读 · 2 评论 -
static 和 const的解释
static 是c++中很常用的修饰符,它被用来控制变量的存储方式和可见性,下面我将从 static 修饰符的产生原因、作用谈起,全面分析static 修饰符的实质。 static 的两大作用:一、控制存储方式: static被引入以告知编译器,将变量存储在程序的静态存储区而非栈上空间。 1、引出原因:函数内部定义的变量,在程序执行到它的定义处时,编译器为它转载 2011-12-06 14:36:50 · 1040 阅读 · 0 评论 -
函数指针温故
这篇文章把函数指针的各种常用情况做了一个详解的总结。 1. 指向普通函数的指针 很简单,如下的例子可以说明基本格式和用法:view plainint int_add(int a, int b) { return (a+b); } int int_sub(int a, int b) { return (a-b); } int转载 2011-12-01 16:33:33 · 947 阅读 · 0 评论 -
设计模式学习之路——序
在IT行业摸爬滚打了快3年了,自己也算磨砺了不少,有一天突然被人问:你知道哪些设计模式?你们不使用设计模式,如何保证软件的可行性。一下子,无数的关于设计模式的问题浮现在我的面前,工作了这么久,在小团体中,从来就是独领风骚的一个,居然连设计模式都不知道,我需要重新审视自己。挫折和问题永远是自己成长的催化剂。知道自己的不足是一个美妙而且庆幸的事,只有敢于面对自己不足的人才是真正的战士。原创 2011-11-29 09:24:38 · 808 阅读 · 0 评论 -
[WebKit]RefPtr和PassRefPtr基础
历史: 在WebKit中,许多对象采用了引用计数。这种模式是通过类的ref,deref成员函数来递增和递减对象的引用记数。调用一次ref必须调用一次deref。当对象的引用记数为0的时候,对象就被删除。WebKit中许多类创建的新对象引用记数都为0,这被称作是浮动状态(Floating State)。在浮动状态的对象必须调用ref,在删除之前必须调用deref。WebCore中许多转载 2011-10-20 17:22:17 · 719 阅读 · 0 评论 -
C++中的namespace用法
关键字namespace定义了一个名字空间,里面的变量和函数,声明在此名字空间外使用须在前面加名字空间名称.例如:#includenamespace my{int a=3;}class test{public:int a;test(){a=1;}void fb(){int a=0;cou转载 2011-10-20 17:06:39 · 872 阅读 · 0 评论 -
C++之引用介绍
引用是C++引入的新语言特性,是C++常用的一个重要内容之一,正确、灵活地使用引用,可以使程序简洁、高效。我在工作中发现,许多人使用它仅仅是想当然,在某些微妙的场合,很容易出错,究其原由,大多因为没有搞清本源。故在本篇中我将对引用进行详细讨论,希望对大家更好地理解和使用引用起到抛转载 2011-10-19 14:12:48 · 877 阅读 · 0 评论 -
C++内联介绍
介绍内联函数之前,有必要介绍一下预处理宏。内联函数的功能和预处理宏的功能相似。相信大家都用过预处理宏,我们会经常定义一些宏,如#define TABLE_COMP(x) ((x)>0?(x):0) 就定义了一个宏。 为什转载 2011-10-19 08:51:17 · 719 阅读 · 0 评论 -
C++友元的概念
我们已知道类具有封装和信息隐藏的特性。只有类的成员函数才能访问类的私有成员,程序中的其他函数是无法访问私有成员的。非成员函数可以访问类中的公有成员,但是如果将数据成员都定义为公有的,这又破坏了隐藏的特性。另外,应该看到在某些情况下,特别是在对某些成员函数多次调用时,由于参数传递,转载 2011-10-19 08:34:07 · 1152 阅读 · 0 评论 -
Linux下c语言实现DES和3DES算法
一、DES算法理论 DES算法属于对称加密算法,在一些对安全性要求较高的交易中运用广泛,如支付行业等。关于DES算法的理论,网上有很多文章都有详细的讲解,写得很好,我这里不再赘述,这里给出链接:http://www.vckbase.com/document/view转载 2011-09-13 16:47:41 · 15502 阅读 · 15 评论 -
mmap函数使用
UNIX网络编程第二卷进程间通信对mmap函数进行了说明。该函数主要用途有三个:1、将一个普通文件映射到内存中,通常在需要对文件进行频繁读写时使用,这样用内存读写取代I/O读写,以获得较高的性能;2、将特殊文件进行匿名内存映射,可以为关联进程提供共享内存空间;3、为无转载 2011-08-03 09:27:47 · 524 阅读 · 0 评论 -
C++拷贝构造函数(深拷贝,浅拷贝)
以前学习C++只学习了如何编程,把每个细节扣的很细,去精研它们。看到深浅拷贝的概念,仔细看了一把概念。红色标注的是概念的定义。C++拷贝构造函数(深拷贝,浅拷贝)对于普通类型的对象来说,它们之间的复制是很简单的,例如:int a=88;int b=a; 而类对象与普通对象不同,类对象内部结构一般较为复杂,存在各种成员变量。下面看一个类对象拷贝转载 2011-12-07 10:17:41 · 893 阅读 · 0 评论