Pytania otagowane jako iostream

Biblioteka C ++ iostream to zorientowana obiektowo biblioteka, która zapewnia funkcje wejścia i wyjścia za pomocą strumieni. Klasy iostreams obsługują bezpieczne wejścia / wyjścia typów wbudowanych i można je rozszerzyć, aby obsługiwały typy zdefiniowane przez użytkownika, przeciążając operatory >> i <<.

10
Dlaczego czytanie linii ze standardowego wejścia w C ++ jest znacznie wolniejsze niż w Pythonie?
Chciałem porównać odczytane wiersze wejściowych ciągów ze standardowego wejścia przy użyciu Pythona i C ++ i byłem zszokowany, gdy mój kod C ++ działał o rząd wielkości wolniej niż równoważny kod Pythona. Ponieważ mój C ++ jest zardzewiały i nie jestem jeszcze ekspertem Pythonista, proszę powiedz mi, czy robię coś …

4
Dlaczego iostream :: eof wewnątrz warunku pętli (tj. `While (! Stream.eof ())`) jest uważany za niewłaściwy?
Właśnie znalazłem komentarz w tej odpowiedzi, który mówi, że używanie iostream::eofw pętli jest „prawie na pewno złe”. Zasadniczo używam czegoś takiego while(cin&gt;&gt;n)- co domyślnie sprawdza EOF. Dlaczego jawne sprawdzanie eofa jest while (!cin.eof())nieprawidłowe? Czym różni się od używania scanf("...",...)!=EOFw C (z którego często korzystam bez problemów)?
595 c++  iostream  c++-faq 

12
C ++: „std :: endl” vs „\ n”
Wiele książek w C ++ zawiera taki przykładowy kod ... std::cout &lt;&lt; "Test line" &lt;&lt; std::endl; ... więc zawsze to robiłem. Ale zamiast tego widziałem dużo kodu od takich programistów: std::cout &lt;&lt; "Test line\n"; Czy istnieje techniczny powód, aby preferować jeden nad drugim, czy to tylko kwestia stylu kodowania?





4
Czy standard C ++ nakazuje słabą wydajność dla iostreams, czy po prostu mam do czynienia ze słabą implementacją?
Za każdym razem, gdy wspominam powolne działanie standardowych bibliotek i +++ C ++, spotykam się z falą niedowierzania. Mam jednak wyniki profilowania pokazujące dużą ilość czasu spędzonego na kodzie biblioteki iostream (pełne optymalizacje kompilatora), a przełączanie z iostreams na interfejsy API I / O specyficzne dla systemu operacyjnego i niestandardowe …

15
Czy potrafisz wyjaśnić pojęcie strumieni?
Rozumiem, że strumień jest reprezentacją sekwencji bajtów. Każdy strumień zapewnia środki do odczytu i zapisu bajtów do danego magazynu kopii zapasowych. Ale jaki jest sens strumienia? Dlaczego sam sklep z podkładami nie wchodzi w interakcje? Z jakiegokolwiek powodu ta koncepcja po prostu mnie nie kliknie. Przeczytałem kilka artykułów, ale myślę, …

11
Kto zaprojektował / zaprojektował IOStreams w C ++ i czy nadal będzie uważany za dobrze zaprojektowany według dzisiejszych standardów? [Zamknięte]
Zamknięte . To pytanie jest oparte na opinii . Obecnie nie przyjmuje odpowiedzi. Chcesz poprawić to pytanie? Zaktualizuj pytanie, aby można było na nie odpowiedzieć, podając fakty i cytaty, edytując ten post . Zamknięte 2 lata temu . Popraw to pytanie Po pierwsze, może się wydawać, że proszę o subiektywne …
128 c++  iostream 

7
Przywróć stan std :: cout po manipulowaniu nim
Załóżmy, że mam taki kod: void printHex(std::ostream&amp; x){ x&lt;&lt;std::hex&lt;&lt;123; } .. int main(){ std::cout&lt;&lt;100; // prints 100 base 10 printHex(std::cout); //prints 123 in hex std::cout&lt;&lt;73; //problem! prints 73 in hex.. } Moje pytanie brzmi, czy istnieje sposób „przywrócenia” stanu coutpierwotnego po powrocie z funkcji? (Trochę jak std::boolalphai std::noboolalpha...)? Dzięki.
105 c++  iostream 


7
Jaka jest różnica między cout, cerr, clog of iostream header w c ++? Kiedy użyć którego?
Próbowałem bada różnicę pomiędzy cout, cerroraz clogw Internecie, ale nie mógł znaleźć idealne odpowiedź. Nadal nie wiem, kiedy którego użyć. Czy ktoś może mi wyjaśnić za pomocą prostych programów i zilustrować idealną sytuację, kiedy należy użyć którego? Odwiedziłem tę stronę, która pokazuje mały program na cerri clog, ale dane wyjściowe …
103 c++  iostream  cout  clog 

4
operator << musi przyjmować dokładnie jeden argument
ah #include "logic.h" ... class A { friend ostream&amp; operator&lt;&lt;(ostream&amp;, A&amp;); ... }; logic.cpp #include "a.h" ... ostream&amp; logic::operator&lt;&lt;(ostream&amp; os, A&amp; a) { ... } ... Kiedy kompiluję, mówi: std :: ostream &amp; logic :: operator &lt;&lt; (std :: ostream &amp;, A &amp;) 'musi przyjmować dokładnie jeden argument. Jaki jest …


Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.