![]() |
1
2
使用
另一方面,不使用
这里的关键说明是
As
Marc Gravell's answer
说,运行时
将
如果getter
|
![]() |
2
1
不,它不会被复制。 从 docs :
使用
如果我们没有
由于访问了一个字段
这同样适用于你的案件
|
![]() |
3
1
对于a 领域 ?没有。但是,为了完整性,我们应该注意,字段通常不应该在公共API表面上公开,它通常应该是一个属性getter,它仍然与您问题中的代码兼容:
现在事情变得更有趣了!
如果已知属性getter没有副作用,那么这很好,但除此之外,这里还有一个防御性副本来保护以下事实
有两种方法:
例如;
请注意,没有什么是真正的
|
|
wavesinaroom · 断言结构向量长度 6 月前 |
![]() |
fghoussen · 在C结构体中,为什么打包、对齐似乎会进行填充? 10 月前 |
![]() |
kamkow1 · 匿名结构的初始值设定项错误无效 1 年前 |