
C语言实现的OOP编程
niepangu
这个作者很懒,什么都没留下…
展开
-
用 C 语言实现程序的多态性
前言:关于多态,关于 C多态 (polymorphism) 一词最初来源于希腊语 polumorphos,含义是具有多种形式或形态的情形。在程序设计领域,一个广泛认可的定义是“一种将不同的特殊行为和单个泛化记号相关联的能力”。然而在人们的直观感觉中,多态的含义大约等同于“同一个方法对于不同类型的输入参数均能做出正确的处理过程,并给出人们所期望获得的结果”,也许这正体现了人们对于多态性所能达转载 2014-11-25 19:49:17 · 607 阅读 · 0 评论 -
C语言实现函数多态
C语言实现函数多态 面向对象编程中比较好的特性就是有继承和函数多态,从而使得对于具有相同父类的子类对象能够调用相同的接口实现对应的功能,举例说明,文本输出类TxtWriter和二进制输出类BinWriter都继承自父类Writer,父类Writer定义了接口Open、Write、Close,两个子类分别实现各自的方法,但是对应的输出格式却分别为文本和二进制,这样其他类使用Writer转载 2014-11-25 21:46:03 · 1188 阅读 · 0 评论 -
用C语言封装数据与方法
用C语言封装数据与方法 类的一个特征就是数据与方法封装在一起,在编译器越来越智能的今天,大多数程序员已经习惯了数据与方法“本来”就是一个“整体”的概念。事实是不是这样呢?在面向对象语言出现之前的程序世界又是什么样的呢?让我们先回到C的世界中,看看那里的数据与方法(C中称为函数)是什么样子的。 在C中通常定义一个结构体用来把一些数据组合在一块儿,然后定义一个函数处理这个结构体。转载 2014-11-25 19:21:37 · 1317 阅读 · 0 评论 -
c语言实现封装,继承和多态
封装c语言使用的struct没有访问控制,任何程序都能访问struct的成员。为了隐藏struct里的成员名称和位置,可以将具体的struct定义放在.c文件中,而在头文件中增加一个指向该结构体的指针。因为无法得知指针类型的具体定义,对这个私有结构体成员的访问只能通过提供的set()和get()函数。下面是头文件test.h的定义:12345转载 2014-11-25 19:53:40 · 598 阅读 · 0 评论 -
在C语言怎样对数据和操作的封装
在C语言怎样对数据和操作的封装*/ --------------------------------------------------------------------------------------*/ 出自: 快乐编程 http://hi.bccn.net/108519*/ 作者: neverTheSame E-mail:zhaoxufeng9997@126.com Q转载 2014-11-25 21:27:50 · 988 阅读 · 0 评论 -
C语言实现封装、继承和多态
1、 概述C语言是一种面向过程的程序设计语言,而C++是在C语言基础上衍生来了的面向对象的语言,实际上,很多C++实现的底层是用C语言实现的,如在Visual C++中的Interface其实就是struct,查找Interface的定义,你可以发现有这样的宏定义:#ifndef Interface#define Interface struct#endi转载 2014-11-25 19:35:00 · 753 阅读 · 0 评论 -
typedef struct CMCI_t *CMCI;的理解
typedef struct CMCI_t *CMCI;CMCI oMCIList经过上边两步骤的转换 定义的oMCIList其实就是结构体struct CMCI_t 的指针原创 2015-03-17 14:05:34 · 1543 阅读 · 0 评论 -
#ifdef 和 #if defined 的区别
#ifdef 和 #if defined 的区别在于,后者可以组成复杂的预编译条件,比如#if defined (AAA) && defined (BBB)xxxxxxxxx#endif#if defined (AAA) || VERSION > 12xxxxxxxxx#endif而#ifdef 就不能用上面的用法,也就是说,当你要判断单个宏是否定义时#ifdef 和 #if转载 2015-03-17 13:23:32 · 599 阅读 · 0 评论 -
const的常见用法
const用法主要是防止定义的对象再次被修改,定义对象变量时要初始化变量 下面我就介绍一下几种常见的用法1.用于定义常量变量,这样这个变量在后面就不可以再被修改 const int Val = 10; //Val = 20; //错误,不可被修改 2. 保护传参时参数不被修改,如果使用引用传递参数或按地址传递参数给一个函数,在这个函数里这转载 2015-03-27 08:06:11 · 527 阅读 · 0 评论