Rumah >pembangunan bahagian belakang >Golang >Bagaimana Saya Boleh Mendapatkan Nama Fail Kod Sumber dan Nombor Baris dalam Go?

Bagaimana Saya Boleh Mendapatkan Nama Fail Kod Sumber dan Nombor Baris dalam Go?

Susan Sarandon
Susan Sarandonasal
2024-12-07 09:33:20916semak imbas

How Can I Get the Source Code File Name and Line Number in Go?

Mengambil Nama Fail Kod Sumber dan Nombor Baris dalam Go

Dalam bahasa pengaturcaraan seperti C/C , pembangun boleh memanfaatkan FAIL dan LINE untuk mendapatkan laluan fail kod sumber semasa dan nombor baris. Adakah Go menawarkan fungsi yang serupa?

Jawapan:

Sudah tentu. Go menyediakan fungsi terbina dalam dipanggil runtime.Caller untuk mengakses nama fail kod sumber dan nombor talian bagi fungsi semasa.

Pelaksanaan:

Untuk menggunakan masa jalan. Pemanggil, anda boleh memanggilnya dengan hujah integer pilihan:

func GetSourceInfo(skip int) (string, int) {
    _, thisFile, thisLine, ok := runtime.Caller(skip)
    if !ok {
        return "", 0
    }
    return thisFile, thisLine
}

Parameter langkau menentukan bilangan lapisan atas timbunan panggilan untuk naik. Sebagai contoh, skip=0 akan mengembalikan maklumat sumber untuk fungsi semasa, skip=1 akan mengembalikan maklumat sumber untuk pemanggil fungsi semasa dan seterusnya.

Contoh Penggunaan:

import (
    "fmt"
    "runtime"
)

func main() {
    file, line := GetSourceInfo(1)
    fmt.Println("Calling function:", file, line)
}

Output:

Calling function: /path/to/my/file.go 12

Atas ialah kandungan terperinci Bagaimana Saya Boleh Mendapatkan Nama Fail Kod Sumber dan Nombor Baris dalam Go?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn