Pytania otagowane jako c++

Pytania na temat C ++, skompilowanego, uniwersalnego języka programowania o typie statycznym, o dowolnej formie, z wieloma paradygmatami.

5
Jak mogę tworzyć i egzekwować umowy dotyczące wyjątków?
Staram się przekonać mój zespół, aby zezwalał na stosowanie wyjątków w C ++ zamiast zwracania wartości bool isSuccessfullub wyliczenia z kodem błędu. Nie mogę jednak odeprzeć jego krytyki. Rozważ tę bibliotekę: class OpenFileException() : public std::runtime_error { } void B(); void C(); /** Does blah and blah. */ void B() …
33 c++  exceptions 

7
Dlaczego konstruktory nie są dziedziczone?
Jestem zdezorientowany, jakie mogą być problemy, jeśli konstruktor zostanie odziedziczony z klasy podstawowej. Cpp Primer Plus mówi: Konstruktory różnią się od innych metod klasowych tym, że tworzą nowe obiekty, podczas gdy inne metody są wywoływane przez istniejące obiekty . Jest to jeden z powodów, dla których konstruktory nie są dziedziczone …
33 c++  inheritance 

9
Czy można napisać zbyt wiele twierdzeń?
Jestem wielkim fanem pisania assertczeków w kodzie C ++ jako sposobu na złapanie przypadków podczas programowania, które nie mogą się zdarzyć, ale zdarzają się z powodu błędów logicznych w moim programie. Jest to ogólnie dobra praktyka. Zauważyłem jednak, że niektóre funkcje, które piszę (które są częścią złożonej klasy) mają 5+ …

4
Kompilator JIT dla C, C ++ i podobnych
Czy istnieje jakiś kompilator just-in-time dla skompilowanych języków, takich jak C i C ++? (Pierwsze imiona, które przychodzą na myśl, to Clang i LLVM! Ale nie sądzę, że obecnie je obsługują.) Wyjaśnienie: Myślę, że oprogramowanie może skorzystać z informacji zwrotnych dotyczących profilowania środowiska wykonawczego i agresywnie zoptymalizowanej ponownej kompilacji punktów …


7
Pisanie w C dla wydajności? [Zamknięte]
Wiem, że dość często słyszałem, że C zazwyczaj ma przewagę wydajności nad C ++. Tak naprawdę nie myślałem o niczym innym, dopóki nie zdałem sobie sprawy, że MSVC wydaje się nawet nie obsługiwać najnowszego standardu C, ale najnowszy obsługuje C99 (o ile mi wiadomo). Planowałem napisać bibliotekę z kodem do …

10
Jaki jest sens używania list nad wektorami w C ++?
Przeprowadziłem 3 różne eksperymenty z listami i wektorami C ++. Te z wektorami okazały się bardziej wydajne, nawet przy dużej ilości wstawień w środku. Stąd pytanie: w którym przypadku listy mają większy sens niż wektory? Jeśli wektory wydają się w większości przypadków wydajniejsze i biorąc pod uwagę podobieństwo ich członków, …


11
typedefs i #defines
Wszyscy zdecydowanie używaliśmy typedefsi #defineraz lub drugi. Dzisiaj, pracując z nimi, zacząłem się nad czymś zastanawiać. Rozważ poniższe 2 sytuacje, aby użyć inttypu danych o innej nazwie: typedef int MYINTEGER i #define MYINTEGER int Podobnie jak w powyższej sytuacji, w wielu sytuacjach możemy bardzo dobrze osiągnąć coś za pomocą #define, …

5
Zezwól na iterację wektora wewnętrznego bez wycierania implementacji
Mam klasę reprezentującą listę osób. class AddressBook { public: AddressBook(); private: std::vector<People> people; } Chcę pozwolić klientom na iterację po wektorze ludzi. Pierwszą myślą, którą miałem, było po prostu: std::vector<People> & getPeople { return people; } Nie chcę jednak ujawniać klientowi szczegółów implementacji . Mogę chcieć zachować pewne niezmienniki, gdy …
32 c++ 



3
Uwagi dotyczące obsługi błędów
Problem: Od dłuższego czasu martwię się o exceptionsmechanizm, ponieważ uważam, że tak naprawdę nie rozwiązuje tego, co powinien. ROSZCZENIE: Na ten temat toczą się długie debaty i większość z nich ma trudności z porównywaniem exceptionsi zwracaniem kodu błędu. To zdecydowanie nie jest tutaj temat. Próbując zdefiniować błąd, zgodziłbym się z …



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.