Câu hỏi phỏng vấn Go lang
Câu hỏi

Bạn hiểu gì về `Sh...

Câu trả lời

Trong Go, Shadowing là một hiện tượng xảy ra khi một biến được khai báo trong một phạm vi nhất định (scope) có cùng tên với một biến đã được khai báo trong một phạm vi bên ngoài. Khi điều này xảy ra, biến trong phạm vi bên trong "che mờ" (shadows) biến ở phạm vi bên ngoài, làm cho biến bên ngoài tạm thời không thể truy cập được trong phạm vi bên trong đó.

Ví dụ về Shadowing:

go Copy
var x int = 10

func main() {
    fmt.Println(x) // In ra 10
    x := 5
    fmt.Println(x) // In ra 5
}

Trong ví dụ trên, biến x được khai báo lần đầu với giá trị 10 ở phạm vi toàn cục. Sau đó, một biến mới cũng tên là x được khai báo trong hàm main với giá trị 5, "che mờ" biến x toàn cục.

Ưu và Nhược Điểm của Shadowing:

Ưu điểm:

  1. Linh Hoạt: Shadowing cho phép t...
senior

senior

Gợi ý câu hỏi phỏng vấn

middle

Bạn có thể khai báo nhiều type của biến trong một câu lệnh khai báo trong Go không?

middle

Tại sao chúng ta lại muốn sử dụng một struct{} rỗng trong Go?

middle

Làm thế nào tôi có thể kiểm tra xem hai slices có bằng nhau trong Go không?

Bình luận

Chưa có bình luận nào

Chưa có bình luận nào