小编Nav*_*han的帖子

交换两个数字golang

我想了解go的内部.请考虑以下代码

a,b := 10,5
b,a = a,b
Run Code Online (Sandbox Code Playgroud)

上面的代码完美地交换2个数字,a变为5,b变为10.我无法理解这是如何工作的.考虑到第二行代码,如果a首先被分配给b,那么b将是10.现在,如果我们将b分配给a,那么不应该是10.

请帮我理解这是如何工作的

谢谢

go

12
推荐指数
1
解决办法
3953
查看次数

使用惰性变量时编译错误

我试图了解懒惰是如何工作的.以下代码编译时没有任何错误.

import UIKit
class Test : UIViewController{
    let i = 1
    lazy var j:Int =  self.i
}
Run Code Online (Sandbox Code Playgroud)

如果我删除j的类型并按下面的代码推断,

import UIKit
class Test : UIViewController{
    let i = 1
    lazy var j =  self.i
}
Run Code Online (Sandbox Code Playgroud)

我得到编译错误"类型的值'NSObject - >() - >测试'没有成员'我'"

有人可以解释编译器发生了什么.谢谢

ios swift

5
推荐指数
1
解决办法
530
查看次数

迅速被字符串变量占用的内存

我想找到一个以字节为单位的字符串变量所占用的内存。假设我们有一个名为test的变量

let test = "abvd"
Run Code Online (Sandbox Code Playgroud)

我想知道如何在运行时中找到测试的大小。

我已经检查了计算Swift字符串的字节大小的详细信息

但是这个问题是不同的。

根据苹果的说法,“在幕后,Swift的本机String类型是根据Unicode标量值构建的。Unicode标量是字符或修饰符的唯一21位数字,例如用于拉丁文小写字母A(“ a”的U + 0061 ),或U + 1F425(前面板婴儿小鸡)(“”)。可以在https://developer.apple.com/library/content/documentation/Swift/Conceptual/Swift_Programming_Language/StringsAndCharacters.html中找到

因此,如果是这样的话,苹果实际上是对Unicode代码点使用固定大小的表示形式,而不是动态UTF8编码。

我想核实这一说法。

提前致谢。

swift

3
推荐指数
1
解决办法
1105
查看次数

随着阵列大小的增加,应用程序崩溃

我有一个空的iOS应用程序.唯一的代码是创建两个数组.

- (void)viewDidLoad {
    [super viewDidLoad];
    uint8_t pixelData[360 * 360 * 4];
    uint8_t sapixelData[360 * 360 * 4];
}
Run Code Online (Sandbox Code Playgroud)

当我在iPad air 2上运行该应用程序时,它会崩溃并显示EXC_BAD_ACCESS代码1.

假设我将数组的大小减小到以下,

- (void)viewDidLoad {
    [super viewDidLoad];
    uint8_t pixelData[60 * 360 * 4];
    uint8_t sapixelData[60 * 360 * 4];
}
Run Code Online (Sandbox Code Playgroud)

该应用程序不会崩溃.我的要求要求阵列大小为360*360*4.请帮我解决这个崩溃.谢谢

objective-c ios

2
推荐指数
1
解决办法
62
查看次数

for循环中的Swift Closures

目前我有代码在循环内执行闭包.我想知道所有闭包何时完成执行.目前我正在使用一个计数器并在闭包完成时递增它,然后我将它与要执行的次数进行比较.代码如下

var count = 0
var noOfTimes = 10
for i in 0..<noOfTimes {
    someVariable.someClosure {
        result in
        count = count + 1
        if count == noOfTimes {
            //do something
        }
    }
}
Run Code Online (Sandbox Code Playgroud)

没有柜台,有没有更好的方法来做到这一点.谢谢.

swift

0
推荐指数
1
解决办法
965
查看次数

标签 统计

swift ×3

ios ×2

go ×1

objective-c ×1