c++

Dlaczego czytanie wierszy ze standardowego wejścia jest znacznie wolniejsze w C++ niż w Pythonie?

Chciałem porównać odczyt linii znaków ze standardowego wejścia przy użyciu Pythona i C++ i byłem zszokowany widząc, że mój ko ... 819,672 cin (no sync) 12,500,000 fgets 14,285,714 wc (not fair comparison) 54,644,808

Gdzie i dlaczego muszę umieścić słowa kluczowe" template "i" typename"?

W szablonach, gdzie i dlaczego muszę umieszczać typename i template na nazwach zależnych? Czym właściwie są nazwy zależne? Ma ... gdzie dokładnie? I należy wtedy przyjąć, że inUnion jest szablonem klasowym, tzn. inUnion<U> nazywa typ, a nie funkcję?

Co to jest wyrażenie lambda w C++11?

Co to jest wyrażenie lambda w C++11? Kiedy mam go użyć? Jaki problem rozwiązują, który nie był możliwy przed ich wprowadzeniem? Kilka przykładów i przypadków użycia byłoby przydatnych.

Dlaczego szablony mogą być zaimplementowane tylko w pliku nagłówkowym?

Cytat z The C++ standard library: a tutorial and handbook : Jedynym przenośnym sposobem użycia szablonów w tej chwili j ... st? (Wyjaśnienie: pliki nagłówkowe nie są tylko przenośnym rozwiązaniem. Ale są to najwygodniejsze przenośne rozwiązanie.)

Nieokreślone zachowanie i punkty sekwencji

Co to są "punkty sekwencji"? Jaka jest relacja między nieokreślonym zachowaniem a punktami sekwencji? Często używam zabawnych ... ci zaczął się pomysł FAQ, więc Twoja odpowiedź najprawdopodobniej zostanie przeczytana przez tych kto wpadł na ten pomysł.)_

Dlaczego zmiana 0.1 f na 0 spowalnia wydajność o 10x?

Dlaczego ten bit kodu, const float x[16] = { 1.1, 1.2, 1.3, 1.4, 1.5, 1.6, 1.7, 1.8, ... y[i] = y[i] - 0; // <-- } } Podczas kompilacji z Visual Studio 2010 SP1. (Nie testowałem z innymi kompilatorami.)

Co to jest kod "przyjazny dla pamięci podręcznej"?

Jaka jest różnica pomiędzy kodem "Cache friendly code" a kodem "Cache friendly"? Jak mogę się upewnić, że piszę kod efektywny w pamięci podręcznej?

Po co nam funkcje wirtualne w C++?

Uczę się C++ i dopiero zaczynam korzystać z funkcji wirtualnych. Z tego, co czytałem (w książce i w Internecie), funkcje wir ... i wydaje się to ważne, więc chcę być jasne, co to dokładnie jest. Po prostu nie mogę znaleźć prostej odpowiedzi w Internecie.

Różnica między dziedziczeniem prywatnym, publicznym i chronionym

Jaka jest różnica między public, private, i protected dziedziczenie w C++? Wszystkie pytania, które znalazłem, dotyczą konkretnych przypadków.

Cykle w oprogramowaniu drzewa genealogicznego

Jestem twórcą jakiegoś oprogramowania drzewa genealogicznego (napisanego w C++ i Qt). Nie miałem żadnych problemów, dopóki je ... za, że X nie może być zarówno ojcem, jak i dziadek Y). Jak mogę rozwiązać te błędy bez usuwania wszystkich twierdzeń danych?

Kiedy używać wirtualnych destruktorów?

Mam solidne zrozumienie większości teorii OO, ale jedna rzecz, która mnie bardzo myli, to wirtualne destruktory. Myślałem, ż ... ruktor zawsze jest wywoływany bez względu na wszystko i dla każdego obiektu w łańcuchu. Kiedy mają być wirtualne i dlaczego?

Czy nawiasy po nazwie typu różnią się od new?

Jeśli 'Test' jest klasą zwykłą, czy jest jakaś różnica między: Test* test = new Test; I Test* test = new Test();

Dlaczego kod C++ do testowania domysłów Collatza działa szybciej niż ręcznie napisany assembly?

Napisałem te dwa rozwiązania dla projektu Euler Q14 , w assembly i w C++. Implementują one identyczne podejście brute force ... avg 200 ms. W związku z tym, że nie jest to możliwe, nie jest to możliwe.]} @Veedrac C++: avg 81 ms z -O3, 305 ms z -O0.

Dlaczego programiści C++ powinni minimalizować użycie 'nowego'?

Natknąłem się na przepełnienie stosu pytanie wyciek pamięci przy użyciu STD::list i jeden z komentarzy mówi tak: Przes ... być tworzone przez wartość w C++ tak często, jak to możliwe, i jaka to różnica wewnątrz? Źle zinterpretowałem odpowiedź?

C++ Singleton design pattern

Ostatnio natknąłem się na realizację/implementację Singleton design pattern dla C++. Wyglądało to tak (zaadoptowałem to z prz ... i wyciek pamięci? Wygląda na to, że jest problem w wdrożenie. Moje główne pytanie brzmi, jak wdrożyć go we właściwy sposób?

Różnica między 'struct ' a' typedef struct ' w C++?

W C++, czy jest jakaś różnica między: struct Foo { ... }; I: typedef struct { ... } Foo;

Kod C++ do testowania domysłów Collatza szybciej niż ręcznie pisany assembly-dlaczego?

Napisałem te dwa rozwiązania dla projektu Euler Q14 , W assembly i w C++. Są to identyczne podejście brute force do testowan ... b asm avg 200 ms @hidefromkgb ASM optimized by @ Peter Cordes avg 145 ms @Veedrac C++ avg 81 ms with -O3, 305 ms z -O0

Zastąpienie 32-bitowego licznika pętli 64-bitowym wprowadza szalone odchylenia wydajności

Szukałem najszybszej drogi do popcount dużych tablic danych. Napotkałem bardzo dziwny efekt : Zmiana zmiennej pętli zunsigned ... em pętlę. Więc nawet jeśli rozwiążesz, nadal możesz zostać trafiony przez majora odchylenia wydajności. Całkiem interesujące.

Kiedy należy wpisać słowo kluczowe 'inline' dla funkcji / metody?

Kiedy powinienem napisać słowo kluczowe inline dla funkcji/metody w C++? Po obejrzeniu kilku odpowiedzi, kilka powiązanych p ... ję / metodę 'inline'? Czy ma to znaczenie, jeśli aplikacja jest wielowątkowa , gdy pisze się "inline" dla funkcja / metoda?

Co to jest undefined reference / unsolved external symbol error i jak go naprawić?

Co to są undefined reference / nierozwiązane zewnętrzne błędy symboliczne? Jakie są najczęstsze przyczyny i jak je naprawić / zapobiec? Możesz edytować/dodawać własne.