首页 > 其他分享 >f1()、f2()、f3() 函数分别返回什么?

f1()、f2()、f3() 函数分别返回什么?

时间:2023-03-21 14:44:06浏览次数:35  
标签:f1 f2 f3 return defer func

func f1() (r int) {
	defer func() {
		r++
	}()
	return 0
}


func f2() (r int) {
	t := 5
	defer func() {
		t = t + 5
	}()
	return t
}


func f3() (r int) {
	defer func(r int) {
		r = r + 5
	}(r)
	return 1
}

 

as:

f1() =1,return 把r设成0,然后defer把r改为1 ; 
f2() =5,return 把r设成5,然后defer改的是t,不影响返回值 ;
f3() =5,return 把r设成1,然后defer把r改为r+5,但是用的r是defer设定时的r,=0;
(靠,是1,r+5的r不是外面的r)

  

标签:f1,f2,f3,return,defer,func
From: https://www.cnblogs.com/gongxianjin/p/17239958.html

相关文章

  • 针对sarasa-shuffle.woff2加密字体进行解密
    本文针对的是类似于sarasa-shuffle.woff2加密字体的一个研究。字体加密是使用Unicode编码将其映射到不同的字体显示的一种前端显示加密手段。在反爬虫中能够起到较好的效......
  • Sequence Master CF2B (构造)
         后记;先贪心的想想能在n内构造出的情况是什么样子的用特殊数字去构造,或者暴力打一个表,来观察规律......
  • 【题解】CF1034E
    题目描述给定\(n\)和长度为\(2^n\)的数列\(a_{0},a_{1}...a_{2^n-1}\)和\(b_{0},b_1...b_{2^n-1}\),保证每个元素的值属于\([0,3]\)生成序列\(c\),对于\(......
  • [NPUCTF2020]ezinclude 1
    [NPUCTF2020]ezinclude1F12查看源码<!--md5($secret.$name)===$pass-->然后以为是要搞MD5的新漏洞姿势,看来WP才发现,不是这样的,是相应包里面有MD5加密后的东西填到P......
  • 【题解】CF1368E
    题目描述有一个由\(n\)个点\(m\)条边组成的有向无环图,每个点出度至多为2。您需要标记一些点(不超过\(\frac{4}{7}n\)个)。标记一个点\(u\)将会删除所有与\(u\)连......
  • 【题解】CF1225F
    题目描述给出一棵n个节点的有根树T,点编号为0∼n−1。记f(u)为u的父节点。初始时你有一条n个点的链L(标号任意),每次操作你可以令f(u)←f(f(u))。需要将链改造......
  • 【题解】CF1439A2
    题目描述给定一个\(n\timesm\)的\(01\)矩阵,每次操作可以将某个\(2\times2\)的矩阵内的\(3\)个数取反,请在\(n\timesm\)步内将矩阵变为全\(0\)。题解这种题......
  • CF1804C 题解
    题目链接今天好不容易有空更那就再更一篇(一道很有意思的诈骗题,我会写出我的思考过程。题意:(我的翻译)一个转盘有$n$个格子分别为$0$$1$$2$$\cdots$$n-1$,初始时在......
  • CF1801G A task for substrings
    题面传送门卡常的出题人什么时候似啊?如果\(l=1,r=|t|\),那么就是蠢得不能再蠢的问题:直接扔到AC自动机上跑匹配就好了,可以做到\(O(\sum|s|+|t|)\)。现在询问的变成了......
  • CF1060E 题解
    前言题目传送门!更好的阅读体验?提供一种更加麻烦的换根DP写法。思路代码#include<iostream>#include<cstdio>usingnamespacestd;typedeflonglongll;cons......