Golang Go语言中 能不用指针就尽量不用指针
指针是分配在堆上的,会造成内存逃逸。
在用结构体的时候,尽量不要用指针,更不要在函数里返回指针。
Golang Go语言中 能不用指针就尽量不用指针
3 回复
但是使用指针可以减少内存占用率吧?而且指针一部分是放在栈上的,指向堆上内存。
在Go语言中,关于是否“能不用指针就尽量不用指针”这一观点,其实需要辩证看待。
首先,Go语言的一大特点是其简洁性和直接性,这在一定程度上鼓励了开发者避免不必要的复杂性,包括指针的使用。在很多场景下,直接使用值而非指针确实可以使代码更加直观和易于维护。
然而,指针在Go语言中也有其不可替代的作用。它们允许你直接访问和修改数据的内存地址,这在处理大型数据结构、实现数据结构间的共享、以及进行底层系统编程时尤为重要。此外,指针还可以用于实现引用传递,这在函数需要修改传入的参数时非常有用。
因此,是否使用指针应根据具体场景来决定。如果你可以通过值传递满足需求,并且这样做不会引入性能问题或复杂性,那么确实可以优先考虑不使用指针。但如果你需要修改传入的参数、处理大型数据结构或进行底层系统编程,那么使用指针将是更加合适的选择。
总之,在Go语言中,指针的使用应基于实际需求而非一概而论。开发者应具备良好的指针使用习惯,以便在需要时能够灵活地选择最佳方案。同时,也应注意避免过度使用指针,以免引入不必要的复杂性和潜在的错误。