Thông tin liên hệ
- 036.686.3943
- admin@nguoicodonvn2008.info
Trong Golang , hàm là nhóm câu lệnh được sử dụng để thực hiện các tác vụ, với giá trị trả về tùy chọn. Go hỗ trợ hai cách chính để truyền đối số: Truyền theo giá trị và Truyền theo tham chiếu. Go mặc định sử dụng truyền theo giá trị.

Các thuật ngữ cơ bản trong truyền tham số cho hàm:
Ví dụ
package main
import "fmt"
// Cố gắng sửa đổi giá trị của num
func modify(num int) {
num = 50
}
func main() {
num := 20
fmt.Printf("Before, num = %d\n", num)
modify(num)
fmt.Printf("After, num = %d\n", num)
}
Trong ví dụ này, num vẫn không thay đổi sau khi gọi modify vì nó được truyền theo giá trị.
Cú pháp
func functionName(param Type) {
// function body # Gọi theo giá trị
}
func functionName(param *Type) {
// function body # Gọi theo tham chiếu
}
Trong call-by-value, một bản sao của giá trị tham số thực tế được truyền qua. Những thay đổi được thực hiện trong hàm không ảnh hưởng đến biến gốc.
Cú pháp
func functionName(param Type) {
// function body
}
Ví dụ:
package main
import "fmt"
// Chỉnh sửa giá trị của num
func modify(num int) {
num = 50
}
func main() {
num := 20
fmt.Printf("Before, num = %d\n", num)
modify(num)
fmt.Printf("After, num = %d\n", num)
}
Kết quả:
Before, num = 20 After, num = 20
Giá trị vẫn giữ nguyên, vì các thay đổi bên trong modify không ảnh hưởng đến num trong main.
Trong call-by-reference, một con trỏ đến tham số thực tế được truyền, do đó bất kỳ thay đổi nào bên trong hàm đều phản ánh trên biến gốc.
Cú pháp
func functionName(param *Type) {
// function body
}
Ví dụ:
package main
import "fmt"
// Chỉnh sửa giá trị của num qua tham chiếu
func modify(num *int) {
*num = 50
}
func main() {
num := 20
fmt.Printf("Before, num = %d\n", num)
modify(&num)
fmt.Printf("After, num = %d\n", num)
}
Kết quả
Before, num = 20 After, num = 50
Vì num được truyền theo tham chiếu nên lệnh modify sẽ thay đổi giá trị của nó, điều này được phản ánh trong lệnh main.
Nguồn tin: Quantrimang.com:
Ý kiến bạn đọc
Những tin mới hơn
Những tin cũ hơn
Top công cụ AI chấm bài luận tiếng Anh tốt nhất cho sinh viên
Figma Make: Biến văn bản thành thiết kế chỉ trong vài giây
Thiết lập Figma MCP Server
Thiết kế đầu tiên do Figma agent tạo ra
Video hướng dẫn tạo giấy mời họp phụ huynh
Hướng dẫn tạo hình ảnh, nội dung bằng Tako trên TikTok
Giúp Figma AI sử dụng hệ thống thiết kế của bạn
Hướng dẫn chỉnh sửa ảnh bằng AI trên TikTok
Câu lệnh AI tạo cơ cấu doanh thu theo nguồn - Hướng dẫn cụ thể từ A đến Z
Prompt tạo Thư cảm ơn cho thầy cô giáo
Cách thức hoạt động thực tế của AI Agent
Giải bài tập bằng AI ngay trên TikTok
Cách trích xuất văn bản trong ảnh ngay trên TikTok
7 cách giúp giảm chi phí token khi dùng Claude Code
Viết prompt SEO hiệu quả để AI tạo bài chuẩn Google
Top 5 mô hình Text-to-Speech mã nguồn mở tốt nhất 2026
prompt test Python
Prompt tạo Python script để xử lý ảnh hàng loạt
Top 5 mô hình Text-to-Speech mã nguồn mở tốt nhất 2026