ios - swift中inout参数传入一个函数,在函数体内print怎么没有被执行?
大家讲道理
大家讲道理 2017-04-17 17:52:05
0
1
446

在一个交换函数中,a和b的值进行交换,使用inout参数传值,这样函数对参数所做的修改将会影响参数本身,但是为什么在swap函数里的print没有被执行?

func swap(inout a : Int , inout b : Int){
    let tmp = a
    print("123")
    a = b
    b = tmp
    
}

var a = 6
var b = 9
print("交换之前,a的值是\(a),b的值是\(b)")
swap(&a, &b)
print("交换之后,a的值是\(a),b的值是\(b)")

输出的结果是:
交换之前,a的值是6,b的值是9
交换之后,a的值是9,b的值是6

swap函数里的print哪里去了???

大家讲道理
大家讲道理

光阴似箭催人老,日月如移越少年。

모든 응답(1)
伊谢尔伦

처음 질문을 읽었을 때 혼란스러웠습니다.
놀이터를 열어서 시도해 보았지만 다음을 찾았습니다.

당신이 호출하는 스왑 기능은 분명히 Swift 자체에서 제공됩니다!

위에서 새로운 스왑 기능을 정의했지만.

그래서 해결책은 함수명을 바꾸는 것...


그런데 다음과 같이 말씀드립니다.
Swift에서는 두 값을 교환하기 위해 다음과 같이 할 수 있습니다

으아아아
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿
회사 소개 부인 성명 Sitemap
PHP 중국어 웹사이트:공공복지 온라인 PHP 교육,PHP 학습자의 빠른 성장을 도와주세요!