
C面向对象编程
文章平均质量分 80
xueda120
程序员
展开
-
C面向对象编程--抽象数据类型(1)
一、数据类型: 在任何编程语言中,数据类型作为一个整体,ANSI-C包含的类型为:int、double、char……,程序员很少满意语言本身提供的数据类型,一个简单的办法就是构造类似:array、struct 或union。 那么,什么是数据类型呢?我们可以这样定义:一种数据类型是一些值的集合——通常char类型共有256不同的值,int有更多,double也包含更...2013-11-11 14:01:47 · 287 阅读 · 0 评论 -
C面向对象编程--抽象数据类型(2)
接上一篇:C面向对象编程--抽象数据类型(1) ,本篇主要实现Set 实现--Set main.c 可以成功编译,但是在编译和执行程序之前,我们必须实现抽象数据类型和内存管理,如果一个对象不储存任何信息,并且每一个对象都至少属于一个set,那么我们可以用一个唯一的较小的正整数值来表示对象和每一个set,而这些正整数值可以使用一个数组heap[ ]中的索引来表示。 如果一个对象是set的成...原创 2013-11-12 00:21:45 · 190 阅读 · 0 评论 -
C语言中void*详解及应用(1)
void的含义: void的字面意思是“无类型”,void *则为“无类型指针”,void *可以指向任何类型的数据。 void几乎只有“注释”和限制程序的作用,因为从来没有人会定义一个void变量,让我们试着来定义: void a; 这行语句编译时会出错,提示“illegal use of type 'void'”。即使void a的编译不会出错,它也没有任何实际意义。 众...原创 2013-11-14 00:45:43 · 513 阅读 · 0 评论 -
C语言实现泛型编程
泛型编程让你编写完全一般化并可重复使用的算法,其效率与针对某特定数据类型而设计的算法相同。在C语言中,可以通过一些手段实现这样的泛型编程。这里介绍一种方法——通过无类型指针void* 看下面的一个实现交换两个元素内容的函数swap,以整型int为例: void swap(int* i1,int* i2){ int temp; temp = *...2014-04-24 11:21:08 · 572 阅读 · 0 评论