如何理解rust的tuple struct
新手刚刚接触rust,在看官方文档的时候,有一节是说tuple struct和只有一个元素的tuple struct,newtype pattern,但觉得官方手册给的例子不太详细,不太能理解,求大神,能给一个详细一点解释和实例
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
tuple type没有名字,它的元素也没有名字
struct type有名字,它的元素也有名字
tuple struct type有名字,它的元素没有名字
一般而言tuple struct没有struct有用,因为大多数情况下元素有个名字总是好的,但是在Rust中,你没办法直接用一个已有的type创建一个新type,比如说你不能直接用已有的
u8
类型创建一个新的new_u8
类型,当然你可以用struct包一层,比如struct new_u8{value:u8}
,但里面的那个元素名value
其实一点用没有,所以此时用tuple struct就刚好,比如如果你要取出起作用的那个匿名元素,可以用destructuring let或pattern match,比如:
说到底这东西就是个语法糖,搞不明白的话只用tuple和struct也一样。