//C语言多态例子
//951868692@qq.com
#include <stdio.h>
typedef struct
{void (*run)(void);void (*fly)(void);void (*speak)(void);
}funInterface_t;//小红实现
static void xiaohongRun(void)
{printf("xiaohong run....\n");
}
static void xiaohongFly(void)
{printf("xiaohong fly...\n");
}
static void xiaohongSpeak(void)
{printf("xiaohong speak...\n");
}
funInterface_t xiaohong_implement_funInterface =
{.run = xiaohongRun,.fly = xiaohongFly,.speak =xiaohongSpeak,
};
//小明实现
static void xiaomingRun(void)
{printf("xiaoming run....\n");
}
static void xiaomingFly(void)
{printf("xiaoming fly...\n");
}
static void xiaomingSpeak(void)
{printf("xiaoming speak...\n");
}
funInterface_t xiaoming_implement_funInterface =
{.run = xiaomingRun,.fly = xiaomingFly,.speak= xiaomingSpeak,
};int main(void)
{funInterface_t* xiaohong= &xiaohong_implement_funInterface;funInterface_t* xiaoming= &xiaoming_implement_funInterface;printf("run....\n");xiaohong ->run();xiaohong ->fly();xiaohong ->speak();xiaoming ->run();xiaoming ->fly();xiaoming ->speak();return 0;
}
//C语言在线测试网站
//http://www.dooccn.com/c/

面向对象在思维不在语言之C 语言多态实现例子相关推荐

  1. Java初学者入门经典:面向对象的思维方法(其实同样非常适合C#的初学者)……非原创,作者忘了,非常抱歉...

    我是从学习Java编程开始接触OOP(面向对象编程),刚开始使用Java编写程序的时候感觉很别扭,因为我早以习惯用C来编写程序,很欣赏C的简洁性和高效性,喜欢C简练而表达能力丰富的风格,特别忍受不了J ...

  2. 2、面向对象的思维(与结构化思维比较)

    2.1 方法背景 结构化思想和面向对象思想虽都产生于20世纪60年代,但它们却存在根本差别.结构化方法承袭了传统的编程思想与编程方法,以计算机的计算功能为前提.编写程序的主要目的是数值计算.问题求解. ...

  3. 【Golang第8章:面向对象编程】Go语言的结构体是什么,怎么声明;Golang方法的调用和声明;go语言面向对象实例,go语言工厂模式;golang面向对象的三大特性:继承、封装、多态

    介绍 这个是在B站上看边看视频边做的笔记,这一章是Glang面向对象编程 这一章内容较多,内容有Go语言的结构体是什么,怎么声明:Golang方法的调用和声明:go语言面向对象实例,go语言工厂模式: ...

  4. JAVA面向对象的思维导图

    JAVA面向对像做的一个简单的思维导图: 表格结构和类结构我们在现实生活中,思考问题.发现问题.处理问题,往往都会用"表格"作为工具.实际上,"表格思维"就是一 ...

  5. 面向对象的思维方法 (转)

    <p>我是从学习Java编程开始接触OOP(面向对象编程),刚开始使用Java编写程序的时候感觉很别扭,因为我早以习惯用C来编写程序,很欣赏C的简洁性 和高效性,喜欢C简练而表达能力丰富的 ...

  6. 面向对象(类的概念,属性,方法,属性的声明,面向对象编程思维

    1 面向对象 1.1 你是如何认识新事物的? 从过往的事物中总结事物的特点(特征),并比对新事物,把新事物进行归类. 1.2 类(Class)的概念(A) 类是对一组具有相同特征和行为的对象的抽象描述 ...

  7. android iOS 都精通,Android IOS开发要理解何为面向对象的思维

    何为面向对象的思维? 面向对象 VS面向过程 OOP =>面向对象,全称Object Oriented Programming POP =>面向过程,全称Process-oriented ...

  8. mcem r语言代码_R语言面向对象编程:S3和R6

    R语言面向对象编程:S3和R6 2017-06-10 0 R语言面向对象编程:S3和R6 一.基于S3的面向对象编程 基于S3的面向对象编程是一种基于泛型函数(generic function)的实现 ...

  9. 机器人技术第三次作业:用面向对象的思维设计相关类,从而实现直线与直线、直线与圆、直线与矩形的交点。

    用面向对象的思维设计相关类,从而实现直线与直线.直线与圆.直线与矩形的交点. 基本思想: 直线与直线,直线与圆:利用公式直接求解 直线与矩形:分解成直线与直线的交点: #include <ios ...

  10. 【面向对象】用大白话扯扯那神奇的面向对象编程思维(一)

    前言:每当提到面向对象的时候,初学者肯定都是一脸懵逼的状态,到底什么是面向对象?会用面向对象后有什么牛逼之处吗?不会用是不是就会死掉?答案肯定不会死掉,我们可以来简单的举一 个栗子 1.当你想到熊猫的 ...

最新文章

  1. 使用SCSS高亮显示控件、聚焦位置
  2. 使用 jetty-maven-plugin发布maven项目
  3. jupyter代码字体大小_你可能并不知道这样定制炫酷的jupyter主题
  4. 11g 64位部分安装过程
  5. 陶哲轩实分析命题 11.10.7
  6. 买卖股票类问题动态规划解法(Leetcode题解-Python语言)
  7. argb888与rgb888转换程序_一文了解各平台RGB565和RGB888区别
  8. android 时间控件使用,android 时间控件的使用
  9. 树状数组 / 二维树状数组
  10. linux权限bcd码是6,Linux权限管理(1)基本权限
  11. GPUImage API 文档之GPUImageFilter类
  12. S实现控制图片显示大小的方法【图片等比例缩放功能】
  13. hadoop大数据概述
  14. 录屏软件 Apowersoft(傲软录屏)
  15. SQL SERVER提示'Modify' 附近有语法错误
  16. w10共享网络没有计算机,win10网络共享找不到对方电脑怎么办
  17. Python 01--介绍、基本语法、流程控制
  18. 学会这三款软件,可以轻松完成录音转文字操作
  19. 大事件!PCIe SSD与SATA SSD同价啦
  20. SIMCom常见模组外围电路设计

热门文章

  1. vs2008 office Ribbon 界面风格初总结
  2. 百度公司创始人李彦宏
  3. iPhone “浴霸” 发布,顶配1万2!最强机器学习芯片,计算性能吊打友商
  4. Framework 添加新的 系统服务
  5. 【安全漏洞】jackson-databind漏洞、 异常NoClassDefFoundError: Could not initialize class com.fasterxml.jackson
  6. 交换机access和trunk口配置及应用
  7. 如何监控NVIDIA GPU 的运行状态和使用情况
  8. MFC之GDI GDI+ 编程实例剖析
  9. 多重签名——典型的数字签名技术
  10. 空調如何影響家居風水_家居风水自查