2017-10-21 45 views
1

可变结构让我们来定义点的4个不同的类别:不变VS结构和类型VS在朱莉娅

type PointType 
    x 
    y 
end 

mutable struct PointMut 
    x 
    y 
end 

immutable PointImmut 
    x 
    y 
end 

struct PointStruct 
    x 
    y 
end 

是什么PointTypePointMut之间的区别?为什么有人会选择一个呢?

PointImmutPointStruct之间的区别是什么?

我倾向于认为它们只是同义词,但我没有明确说明这一点,所以我想知道是否有某种隐藏的细微差别。

+0

[“在0.6中,不变和类型仍允许作为没有弃用警告的同义词。”](https://github.com/JuliaLang/julia/blob/master/NEWS.md#language-changes-1) – Gnimuc

回答

10

typeimmutable是有效的高达0.6朱莉娅,mutable structstruct是同一物体在茱莉亚0.6和前进的名称。 mutablemutable struct表示字段可以更改 - 实际上很少使用,所以不可变是默认值。 mutable struct's比struct s慢。

+0

谢谢,获取这些信息并不是微不足道的。 – tst

+0

这是因为它已被弃用。 “类型”和“不可变的”曾经存在的事实将很快成为历史书籍的一部分。 –