zoukankan      html  css  js  c++  java
  • 在C语言结构体中添加成员函数

      我们在使用C语言的结构体时,经常都是只定义几个成员变量,而学过面向对象的人应该知道,我们定义类时,不只是定义了成员变量,还定义了成员方法,而类的结构和结构体非常的相似,所以,为什么不想想如何在C语言结构体中添加成员变量呢

      在C语言的结构体中是不能直接定义成员函数的,这点和C++不同,但是我们可以通过定义一个函数指针的方式来指向一个方法。

      示例代码如下:

     1 #include<stdio.h>
     2 #include<stdlib.h>
     3 typedef struct node
     4 {
     5     int a;
     6     void(*p)(int b);
     7 }no;
     8 
     9 void fun(int b)
    10 {
    11     printf("hello,%d
    ",b);
    12 }
    13 
    14 int main()
    15 {
    16     no a = { 1,fun };
    17 
    18     a.p(a.a);
    19     system("pause");
    20     return 0;
    21 }

      这段代码运行出来,控制台会打印出hello,1.这就表面明了,我们成功的调用了函数,并且成功的传递了参数进去。

  • 相关阅读:
    让网页活起来!韵律线带你提升带你飞!
    打造晶格化背景
    简单banner制作
    设计模式-适配器模式
    类、方法的单一职责
    .NET趋势
    C# Delegate Event
    VB.NET项目技术总结
    版本控制工具Git的使用
    delete语句要注意的BUG.
  • 原文地址:https://www.cnblogs.com/swust-wangyf/p/6817055.html
Copyright © 2011-2022 走看看