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
Hướng dẫn tạo video avatar thuyết trình trên Google Vids
Bổ sung kiến thức cho agent trong Copilot Studio
9 câu lệnh phân tích hình ảnh cực chuyên nghiệp
TOP công cụ AI cho Microsoft Excel giúp phân tích dữ liệu, tạo công thức và biểu đồ
TOP công cụ AI quản lý mạng xã hội tốt nhất
Hướng dẫn tạo ảnh thumbnail trên ChatGPT
Tóm tắt các nguồn kiến thức cho agent trong Copilot Studio
TOP công cụ AI tuyển dụng tốt nhất
5 cách sáng tạo để sử dụng LLM
5 câu lệnh nâng cấp ảnh trên Gemini bạn cần nhớ
9 câu lệnh phân tích hình ảnh cực chuyên nghiệp
5 lý do Claude Cowork được đánh giá là đổi mới AI lớn nhất trong năm 2026
Tăng cường bảo mật ChatGPT bằng Lockdown Mode
Prompt tạo poster sinh nhật em bé phong cách sang trọng bằng AI
Top 10 nền tảng “no-code” AI Agent tốt nhất dành cho người mới bắt đầu
Plugin trong Claude Code là gì?
Hướng dẫn tạo phiếu bài tập viết số học từ vựng
Cách tiếp tục sử dụng mô hình AI đã ngừng hỗ trợ trong Microsoft Copilot Studio
Chọn một mô hình bên ngoài làm mô hình AI chính trong Copilot Studio
Prompt tạo bộ ảnh selfie phong cách Instagram bằng AI