sizeof与MemoryLayout
sizeof 在C语言中,可能会经常与sizeof打交道,用来计算数据占用内存大小。在C中sizeof即可以作用于类型也可以作用于某个实际的变量,并返回其在内存中的尺寸size_t。 在Swift 3以前,也有sizeof,不过与C中的运算符不同,它经过了一层包装,变成了一个只接受类型的方法,而接受具体值的则为另一个方法: sizeofValue func sizeof<T>(_: T.Type) -> Int func sizeofValue<T>(_: T) -> Int 不过sizeofValue接受的虽然是具体值,但是返回的是这个值的实际大小,而不是其内容的大小。所以与C中用sizeof拿来计算数组内容在内存中占据的尺寸不一样: // C char bytes[] = {1, 2, 3}; sizeof(bytes); // 3 int bytes[] = {1,…