Pertanyaan yang diberi tag visual-c++

19
int numeral -> aturan konversi pointer

Pertimbangkan kode berikut. void f(double p) {} void f(double* p) {} int main() { f(1-1); return 0; } MSVC 2017 tidak mengkompilasi itu. Itu angka ada panggilan ambigu yang berlebihan, seperti 1-1yang sama 0dan karena itu dapat dikonversi menjadi double*. Trik lain, seperti 0x0, 0L, atau...

13
Kemungkinan kompiler bug di MSVC

Kode berikut dikompilasi dengan gcc dan dentang (dan banyak kompiler C ++ 11 lainnya) #include <stdint.h> typedef int datatype; template <typename T> struct to_datatype {}; template <> struct to_datatype<int16_t> { static constexpr datatype value = 1; }; template...