Jadual Kandungan
Jawapan betul
Rumah pembangunan bahagian belakang Golang Bagaimanakah refleksi jenis untuk jenis tersirat berfungsi?

Bagaimanakah refleksi jenis untuk jenis tersirat berfungsi?

Feb 06, 2024 am 09:30 AM
penukaran jenis tersirat

Bagaimanakah refleksi jenis untuk jenis tersirat berfungsi?

Kandungan soalan

Setakat yang saya faham, go ditaip secara statik dan biasanya tidak melakukan penukaran jenis tersirat. Oleh itu, pemalar tanpa pengisytiharan jenis eksplisit adalah tertakluk kepada keperluan pada penggunaan pertama.

Jadi, dalam coretan kod di bawah, saya mahu nfloat64,因为这就是 math.sin 所期望的。但是当打印出反射类型时,我看到了 int.

package main

import (
    "fmt"
    "math"
    "reflect"
)

func main() {
    const n = 5000 // No explict type

        // fmt.Println(reflect.TypeOf(n)) // this would print "int"

    fmt.Println(math.Sin(n)) // math.Sin expects a float64

    fmt.Println(reflect.TypeOf(n)) // print "int"
}
Salin selepas log masuk

Apa yang berlaku di sini? n 实际上有隐式 int 类型吗?或者反射不会显示这样的实际类型情况?我不认为 math.sin sedang menaip hujahnya kerana jika saya menyatakan jenis eksplisit, pengkompil akan menimbulkan ralat.


Jawapan betul


[Jenis pemalar yang tidak ditaip] adalah berdasarkan keperluan pada penggunaan pertama.

Di sinilah anda silap. Satu jenis dipilih secara bebas untuk setiap kegunaan.

math.Sin memerlukan hujah float64, jadi pengkompil mesti memilih float64 di sini.

reflect.TypeOf mengambil hujah antara muka{}, jadi pengkompil bebas untuk memilih sebarang jenis angka (kerana mereka semua melaksanakan antara muka kosong). Jenis integer lalai dipilih di sini: int.

Atas ialah kandungan terperinci Bagaimanakah refleksi jenis untuk jenis tersirat berfungsi?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan Laman Web ini
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

Alat AI Hot

Undresser.AI Undress

Undresser.AI Undress

Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover

AI Clothes Remover

Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool

Undress AI Tool

Gambar buka pakaian secara percuma

Clothoff.io

Clothoff.io

Penyingkiran pakaian AI

AI Hentai Generator

AI Hentai Generator

Menjana ai hentai secara percuma.

Artikel Panas

R.E.P.O. Kristal tenaga dijelaskan dan apa yang mereka lakukan (kristal kuning)
3 minggu yang lalu By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Tetapan grafik terbaik
3 minggu yang lalu By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Cara Memperbaiki Audio Jika anda tidak dapat mendengar sesiapa
3 minggu yang lalu By 尊渡假赌尊渡假赌尊渡假赌
WWE 2K25: Cara Membuka Segala -galanya Di Myrise
3 minggu yang lalu By 尊渡假赌尊渡假赌尊渡假赌

Alat panas

Notepad++7.3.1

Notepad++7.3.1

Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina

SublimeText3 versi Cina

Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1

Hantar Studio 13.0.1

Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6

Dreamweaver CS6

Alat pembangunan web visual

SublimeText3 versi Mac

SublimeText3 versi Mac

Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Apakah penukaran jenis tersirat yang wujud dalam mysql? Apakah penukaran jenis tersirat yang wujud dalam mysql? Nov 14, 2023 am 11:28 AM

Penukaran jenis tersirat yang wujud dalam MySQL termasuk rentetan kepada jenis angka, jenis tarikh dan masa, titik terapung dan jenis integer, nilai NULL, dsb. Pengenalan terperinci: 1. Penukaran jenis tersirat daripada rentetan kepada jenis angka Apabila rentetan dibandingkan atau dikira dengan nilai jenis angka, MySQL akan menukar rentetan itu kepada jenis angka 2. Jenis tersirat jenis tarikh dan masa penukaran. Dalam MySQL, jenis tarikh dan masa juga boleh ditukar secara tersirat dengan jenis data lain 3. Penukaran jenis tersirat bagi jenis titik terapung dan integer, dsb.

Apakah penukaran jenis tersirat dan penukaran jenis eksplisit dalam bahasa C? Apakah penukaran jenis tersirat dan penukaran jenis eksplisit dalam bahasa C? Sep 08, 2023 pm 10:13 PM

Menukar satu jenis data kepada yang lain dipanggil penukaran jenis. Penukaran Jenis Tersirat Penukaran Jenis Tersirat Penukaran Jenis Tersirat Pengkompil menyediakan penukaran jenis tersirat apabila operan mempunyai jenis data yang berbeza. Ia dilakukan secara automatik oleh pengkompil dengan menukar jenis data yang lebih kecil kepada jenis data yang lebih besar. inti,x;floatf;doubled;longintl;Di sini, ungkapan di atas akhirnya dinilai kepada nilai "berganda". Contoh Berikut ialah contoh penukaran jenis tersirat-intx;for(x=97;x<=122;x++){ printf("%c",x);/*Im

Jenis penukaran fungsi golang Jenis penukaran fungsi golang Apr 19, 2024 pm 05:33 PM

Penukaran jenis dalam fungsi membolehkan data satu jenis ditukar kepada jenis lain, dengan itu memanjangkan fungsi fungsi. Gunakan sintaks: type_name:=variable.(type). Sebagai contoh, anda boleh menggunakan fungsi strconv.Atoi untuk menukar rentetan kepada nombor dan mengendalikan ralat jika penukaran gagal.

Perbandingan kelebihan dan kekurangan parameter lalai fungsi C++ dan parameter pembolehubah Perbandingan kelebihan dan kekurangan parameter lalai fungsi C++ dan parameter pembolehubah Apr 21, 2024 am 10:21 AM

Kelebihan parameter lalai dalam fungsi C++ termasuk memudahkan panggilan, meningkatkan kebolehbacaan dan mengelakkan ralat. Kelemahannya ialah fleksibiliti terhad dan sekatan penamaan. Kelebihan parameter variadic termasuk fleksibiliti tanpa had dan pengikatan dinamik. Kelemahan termasuk kerumitan yang lebih besar, penukaran jenis tersirat dan kesukaran dalam penyahpepijatan.

Penukaran jenis tersirat: Penerokaan pelbagai variasi jenis dan aplikasinya dalam pengaturcaraan Penukaran jenis tersirat: Penerokaan pelbagai variasi jenis dan aplikasinya dalam pengaturcaraan Jan 13, 2024 pm 02:54 PM

Terokai pelbagai jenis penukaran jenis tersirat dan peranannya dalam pengaturcaraan Pengenalan: Dalam pengaturcaraan, kita selalunya perlu berurusan dengan jenis data yang berbeza. Kadangkala, kita perlu menukar satu jenis data kepada jenis lain untuk melaksanakan operasi tertentu atau memenuhi keperluan khusus. Dalam proses ini, penukaran jenis tersirat adalah konsep yang sangat penting. Penukaran jenis tersirat merujuk kepada proses di mana bahasa pengaturcaraan secara automatik melakukan penukaran jenis data tanpa menyatakan jenis penukaran secara eksplisit. Artikel ini akan meneroka pelbagai jenis penukaran jenis tersirat dan peranannya dalam pengaturcaraan,

Beberapa situasi kegagalan indeks mysql Beberapa situasi kegagalan indeks mysql Feb 21, 2024 pm 04:23 PM

Situasi biasa: 1. Gunakan fungsi atau operasi; 2. Penukaran jenis tersirat 3. Gunakan tidak sama dengan (!= atau <>); Nilai; 7. Selektiviti indeks rendah 8. Prinsip awalan paling kiri bagi indeks komposit 9. Keputusan pengoptimum;

Penjelasan terperinci tentang jenis statik dalam bahasa Go Penjelasan terperinci tentang jenis statik dalam bahasa Go Apr 07, 2024 pm 05:42 PM

Bahasa Go menggunakan penaipan statik dan melakukan pemeriksaan jenis pada masa penyusunan untuk mengelakkan ralat jenis masa jalan. Jenis asas termasuk integer, terapung, boolean, rentetan dan kepingan bait. Jenis komposit termasuk tatasusunan, kepingan, struktur, antara muka dan saluran. Bahasa Go menyokong inferens jenis dan operator penukaran pelbagai jenis. Jenis alias memudahkan kebolehbacaan dan kebolehselenggaraan kod. Penaipan statik membawa kelebihan keselamatan, prestasi dan kebolehselenggaraan.

Apakah perbezaan antara int dan float dalam bahasa c Apakah perbezaan antara int dan float dalam bahasa c Apr 29, 2024 pm 10:12 PM

Perbezaan antara pembolehubah int dan apungan dalam bahasa C ialah ia mempunyai jenis yang berbeza: int digunakan untuk menyimpan integer, manakala apungan digunakan untuk menyimpan perpuluhan. Saiz storan: int biasanya mengambil masa 4 bait, dan terapung juga mengambil 4 bait. Ketepatan: int mewakili integer tepat, manakala apungan mempunyai ketepatan terhad. Julat: int biasanya berjulat dari -2^31 hingga 2^31-1, manakala apungan mempunyai julat yang lebih luas. Operasi aritmetik: int dan apungan boleh melakukan operasi dan perbandingan aritmetik, tetapi hasilnya mungkin dipengaruhi oleh pengehadan ketepatan. Penukaran jenis: Penukaran jenis eksplisit atau tersirat boleh dilakukan antara int dan float.

See all articles