Pertanyaan yang diberi tag language-lawyer

15
Bagaimana kompiler c ++ menemukan variabel eksternal?

Saya mengkompilasi program ini dengan g ++ dan clang ++. Ada perbedaan: g ++ mencetak 1, tetapi dentang ++ mencetak 2. Tampaknya g ++: extern varible didefinisikan dalam lingkup terpendek. dentang ++: variabel ekstern didefinisikan dalam ruang lingkup global terpendek. Apakah spesifikasi C ++...

14
Apakah ini bug di std :: gcd?

Saya menemukan perilaku std::gcdyang tidak terduga ini: #include <iostream> #include <numeric> int main() { int a = -120; unsigned b = 10; //both a and b are representable in type C using C = std::common_type<decltype(a), decltype(b)>::type; C ca = std::abs(a); C cb = b;...