zoukankan      html  css  js  c++  java
  • 对于 C语言的扩展和JAVA的重载理解

    哎,又被学长看成笨蛋了  ,先前学习java,自己真是什么都要忘了,弄得自己连java最重要的概念--重载,都不知道是啥,还厚着脸皮和学长说  是函数名字一样  ,但是就是函数里面的参数和参数类型不一样,简直就是笨蛋,白学了 。然后最近再弄这个数据结构的课程设计,重新理解了这个重载  ,其实这个重载就是C语言的那个扩展。可以这样理解:一个刀子,在切水果时,就叫水果刀,在切木块时,就叫工具刀,在切菜时,就叫菜刀,但是  无论怎么样 ,他的功能是一样的,所干的事情,可以说是没啥区别。把它延伸到C语言,就是  你编得函数方法,处理int数据行,处理结构体  还行  因为最终达到的效果都是一样的  只不过 换了个类型而已。操作类似,这个就叫做C语言的扩展

    至于 JAVA的那个重载:就是函数名字一样,参数类型不一样,但是参数的数量一样,二者达到的最终目标一样,你比如说  这个函数是实现加法,那么不同的类型,最终都是做了加法。

    ----------------------------------------------------------------------

      还有个就是  在C语言的函数参数里面也可以把函数作为参数传进去,但是这个函数传进去是有要求的,函数的参数里面必须得带有一个参数

        比如说   fun( int a,add(int)){}   这个函数名字其实就是代表一个地址  是一个指针

            如果  你想知道一个函数的地址  可以这样:  

     1 #include<stdio.h>
     2 int main()
     3 {
     4     int (*p)();
     5     int fun();
     6     p=fun;
     7     printf("%d
    ",p);
     8     return 1;
     9     
    10 }
    11 int fun()
    12 {
    13     return 1;
    14 }

    这个p就是一个函数指针;但是这个p到底是代表那个函数的地址  还是指向那个函数的地址,这个不知道 很模糊

  • 相关阅读:
    特征向量的意义
    双线性插值原理和实现
    C语言中float double等类型在内存中的存储
    实现大小端之间的转换宏,包括32位和64位的数
    C语言运算符优先级列表(超级详细的---转载加自己习题)
    printf输出结果的判断
    C语言中定义变量的先后顺序和为变量分配内存的顺序
    C 中细节问题的试题
    Hadoop学习之HBase的伪分布式安装
    Hadoop学习之ZooKeeper理论知识和集群安装配置
  • 原文地址:https://www.cnblogs.com/xiaoyoucai/p/6581154.html
Copyright © 2011-2022 走看看