【发布时间】:2020-04-18 12:58:12
【问题描述】:
我正在使用 Go 进行一个项目。我使用了“unsafe.Pointer(&x)”,并且在使用一些错误检查器和漏洞检查器程序进行检查时,我收到了这个警告,我应该避免使用它。所以我想知道它是否真的是一个漏洞,或者它如何影响我的应用程序。还有为什么这个包名不安全?
【问题讨论】:
-
它本身并不会以某种方式使您的程序“不安全”,但这意味着它打开了类型安全的旁路,因此编译器不再保证您的代码即使不会崩溃当你搞砸时,现在由你来确保你正确地使用它。
-
unsafe 包被命名为 unsafe,因为它使您的代码更加安全。或者可能不是?包 unsafe 允许执行不安全的操作,您应该永远使用它。特别是如果这种语言对您来说是新的。如果你想玩不安全:使用C或直接去asm。
标签: security go unsafe-pointers