D是否通过副本传递值?

标签 d pass-by-value pass-by-pointer

如果我这样做:

myclass a = new myclass();
myclass b = a;

b 是否指向 a 或者是 a 的副本?

最佳答案

D 中的类使用引用语义,因此 b 指向与 a 相同的对象。另一方面,结构使用值语义,所以...

auto a = mystruct();
auto b = a;

...将引用不同的对象。

关于D是否通过副本传递值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23502310/

相关文章:

d - 在 D 中编译发布版本的代码

javascript - Typescript/JSX - 通过引用分配一个类的实例

version - 如何在编译时检查 DMD 版本?

c++ - D编程: interface at component boundaries

Java 将 List 参数作为引用

java - Java 取消引用是如何工作的?

c++ - 将指针传递给在 C++ 中动态定义的内置类型

swift - Swift 是按值传递还是按引用传递

d - 是否有惯用的 D 方法来生成包含从 1 到 n 的整数的数组?