您好、欢迎来到现金彩票网!
当前位置:2019跑狗图高清彩图 > 形参 >

c中实参和形参的区别

发布时间:2019-07-25 05:49 来源:未知 编辑:admin

  可选中1个或多个下面的关键词,搜索相关资料。也可直接点“搜索资料”搜索整个问题。

  展开全部形参:在定义函数中指定的参数就是形参,在未出现函数调用时,他们并不占内存中的存储单元,只有在发生函数调用时,函数中的形参才被分配内存单元。在调用结束后,形参所占的内存单元也被释放。

  实参:实参可以是常量、变量和表达式,但要求有确定的值。在调用时将实参的值赋给形参。在内存中,实参单元和形参单元是不同的单元。在调用函数时,给形参分配存储单元,并将实参对应的值传递给形参,调用结束后,形参单元被释放,实参单元仍保留原值。

  C#中有两种类型的数据,一种为值类型;另一种为引用类型。理解这两种数据类型,有利于进一步编程和实现。

  他们最大的区别就是存储的位置不同,前者值类型存储在内存的堆栈中(一些书上面也说是【栈】),后者存储在内存堆中(一些书上面说是【堆】),栈中的内存不需要自己就能回收,内存堆中的数据需要FrameWork 自己的内存清理机制进行回收。

  值类型的数据传递参数的时候,默认情况下采用传递形参,实参的内容不变,如果想把实参传递过去,那么,在C#中只有通过ref关键字来实现。其实这里面的ref和c/c++中的地址引用差不多,具体原理没有深究,但是可以这么理解。

  但是引用类型传递的时候是传递的内存的地址,也就是“传递实参”。所以有些时候就能够理解一些东西了。比如:DataSet传递时候,就是传递的“实参”。他也就是引用类型。

http://7milediver.com/xingcan/437.html
锟斤拷锟斤拷锟斤拷QQ微锟斤拷锟斤拷锟斤拷锟斤拷锟斤拷锟斤拷微锟斤拷
关于我们|联系我们|版权声明|网站地图|
Copyright © 2002-2019 现金彩票 版权所有