Pytania oznaczone «c++»

85
Jak działa std :: flush?

Czy ktoś może wyjaśnić (najlepiej używając zwykłego angielskiego), jak std::flushdziała? Co to jest? Kiedy spłukiwałbyś strumień? Dlaczego to jest ważne? Dziękuję Ci.

85
A () = A () - dlaczego się kompiluje?

class A {}; int main() { A() = A(); return 0; } Dlaczego ten kod się kompiluje? Czy nie powinno być błędu polegającego na umieszczeniu po lewej stronie operatora przypisania lwartość? Czy A () lwartość? Wersja g ++ 4.7

85
użyj std :: fill, aby zapełnić wektor rosnącymi liczbami

Chciałbym wypełnić vector<int>użycie std::fill, ale zamiast jednej wartości wektor powinien zawierać liczby w kolejności rosnącej po. Próbowałem to osiągnąć, iterując trzeci parametr funkcji o jeden, ale to dałoby mi tylko wektory wypełnione 1 lub 2 (w zależności od pozycji...

85
Kompilacja kończy się niepowodzeniem i komunikat „relocation R_X86_64_32 do„ .rodata.str1.8 ”nie może być użyty podczas tworzenia obiektu udostępnionego”

Próbuję skompilować ten kod źródłowy z pliku makefile w VPS, ale nie działa. VPS to 64-centowy system operacyjny Oto pełny błąd # make gcc -c -O3 -w -DLINUX -I../SDK/amx/ ../SDK/amx/*.c g++ -c -O3 -w -DLINUX -I../SDK/amx/ ../SDK/*.cpp g++ -c -O3 -w -DLINUX -I../SDK/amx/ *.cpp g++ -O2...

85
Dlaczego Math.pow (0, 0) === 1?

Wszyscy wiemy, że 0 0 jest nieokreślone. Ale , javascript mówi, że: Math.pow(0, 0) === 1 // true a C ++ mówi to samo: pow(0, 0) == 1 // true CZEMU? Wiem to: >Math.pow(0.001, 0.001) 0.9931160484209338 Ale dlaczego nie Math.pow(0, 0)rzuca żadnych błędów? A może NaNbyłoby lepsze niż...

85
Czy istnieje typ danych „bajt” w C ++?

Jeśli istnieje, czy istnieje plik nagłówkowy do dołączenia? Ten kod daje błąd kompilacji: #include <iostream> using namespace std; int main() { byte b = 2; cout << b << endl; return 0; }

84
długo w C / C ++

Próbuję tego kodu na kompilatorze GNU C ++ i nie jestem w stanie zrozumieć jego zachowania: #include <stdio.h>; int main() { int num1 = 1000000000; long num2 = 1000000000; long long num3; //num3 = 100000000000; long long num4 = ~0; printf("%u %u %u", sizeof(num1), sizeof(num2),...