有return如果是try catch finally运行命令

背景:

昨天一个朋友出去采访,遇到这样的问题:“C#  catch那里return。finally也弄它运行?”

个人总结实践:

1、无论有木有出现异常。finally块中代码都会运行

2、当try和catch中有return时,finally仍然会运行

详细案比例如以下(此处以没有返回值的函数进行验证):

3、假设是值传递。finally中改变的值对try或catch块中return返回的值无影响假设是引用类型參数(地址传递或对象),finally中的值改变对return会产生影响

详细案例:

引用案例--数组类型:

值案例--int类型:

思考:string类型属于引用类型。那么它的返回值会受到finflly的影响吗?还是来看案例吧-----事实上string与int类型的表现一样,不会受到finally的影响:

思考:那么在finally中加上return,会产生什么影响呢?有图有真相:

可见。finally中是不同意出现return的。否则连编译都过不去。

版权声明:笔者:jiankunking 资源:http://blog.csdn.net/jiankunking 本文版权归作者和CSDN合伙人,欢迎转载,但是,如果没有从本节宣布提交权限必须保留。并连接到原来的文章页给出视在位置。

时间: 2024-08-26 04:56:35

有return如果是try catch finally运行命令的相关文章

怎么让 FFmpeg 运行命令呢?很

上一篇文章实现了 FFmpeg 编译及 Android 端的简单调用,成功获取了 FFmpeg 支持的编解码信息,而在实际使用时,需要调用 FFmpeg 内部函数,或通过命令行方式调用,但后者简单很多. 怎么让 FFmpeg 运行命令呢?很简单,调用 FFmpeg 中执行命令的函数即可,这个函数位于源码的 ffmpeg.c 文件中: int main(int argc, char **argv)11我们的目的很简单:将 FFmpeg 命令传递给 main 函数并执行.而这个传递过程需要编写底层代

linux后台运行命令

来源:http://www.ibm.com/developerworks/cn/linux/l-cn-nohup/ 我们经常会碰到这样的问题,用 telnet/ssh 登录了远程的 Linux 服务器,运行了一些耗时较长的任务, 结果却由于网络的不稳定导致任务中途失败.如何让命令提交后不受本地关闭终端窗口/网络断开连接的干扰呢?下面举了一些例子, 您可以针对不同的场景选择不同的方式来处理这个问题. nohup/setsid/& 场景: 如果只是临时有一个命令需要长时间运行,什么方法能最简便的保证

nobup 与 后台运行命令

1. Linux进程状态:R (TASK_RUNNING),可执行状态&运行状态(在run_queue队列里的状态) 2. Linux进程状态:S (TASK_INTERRUPTIBLE),可中断的睡眠状态, 可处理signal 3. Linux进程状态:D (TASK_UNINTERRUPTIBLE),不可中断的睡眠状态, 可处理signal, 有延迟 4. Linux进程状态:T (TASK_STOPPED or TASK_TRACED),暂停状态或跟踪状态, 不可处理signal, 因为根

windows运行命令大全

winver 检查Windows版本 wmimgmt.msc 打开Windows管理体系结构(wmi) wupdmgr Windows更新程序 w脚本 Windows脚本宿主设置 write 写字板 winmsd 系统信息 wiaacmgr 扫描仪和照相机向导 winchat xp自带局域网聊天 mem.exe 显示内存使用情况 msconfig.exe 系统配置实用程序 mplayer2 简易widnows media player mspaint 画图板 mstsc 远程桌面连接 mplay

断开ssh链接在后台继续运行命令

转载:http://blog.csdn.net/v1v1wang/article/details/6855552 对于linux运维,我们都是使用ssh登录到服务器,如果我们运行的任务需要很长时间或不间断运行,在我们直接关闭终端窗口或网络不稳定的情况下,任务就会中断,当然这只对于普通程序,不包括如mysqld,httpd这样的守护进程.原因分析: [[email protected] ~]# ping 51osos.com > /dev/null & [1] 13678 [[email pr

Windows中用运行命令直接启动指定软件的方法

由于习惯了在linux上用终端启动软件,而在windows上习惯于不显示桌面(众多乱七八糟的快捷方式看着就烦),又不想用类似于360桌面管理软件,于是尝试着能否在windows上找到类似的启动方式,最终找到一条捷径^_^ 首先给你需要快速启动的软件创建一个快捷方式,将快捷方式的名字改为你启动时想输入的口令(比如我把“腾讯QQ”改为“qq”). 把修改好的快捷方式复制或剪切到C:\windows\下. win+R键调出运行命令,输入想要启动的快捷方式的名字(如“qq”),即可启动此程序.

WIN7 X64的运行命令窗口

要在WIN7系统下用界面的方式执行运行命令,则可以用如下两种方法方法打开运行对话框.1.点Win+R(run)就能出来的.2.在开始菜单上点右键,选“属性”,进入开始菜单属性设置界面,单击底部的“自定义”按钮. 在下面的列表框中找到“显示运行”并勾选,然后点“确认”退出,即可发现“运行”命令又重新出现在开始菜单的底部了

计算机运行命令全集

<计算机运行命令全集> winver---------检查Windows版本wmimgmt.msc----打开windows管理体系结构wupdmgr--------windows更新程序winver---------检查Windows版本wmimgmt.msc----打开windows管理体系结构wupdmgr--------windows更新程序wwww--------windows脚本宿主设置write----------写字板winmsd-----系统信息wiaacmgr-------

Win 管理器 运行命令 大全(Windows下的DOS运行命令)

DOS 运行命令管理器字符大全 Win 管理器  运行命令 大全(Windows下的DOS运行命令) Nslookup-------IP 地址侦测器 explorer-------打开资源管理器 devmgmt.msc--- 设备管理器 progman--------程序管理器 taskmgr-----任务管理器(2000/ xp/ 2003 ) ntmsmgr.msc----移动存储管理器 eventvwr-------事件查看器 sysedit--------系统配置编辑器 regedt32