Pytania otagowane jako c++

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

3
W jaki sposób GDB wstrzymuje wykonanie
Jak zapewne wiesz, możemy użyć GDB i ustawić punkty przerwania w naszym kodzie, aby wstrzymać wykonywanie w celu debugowania. Moje pytania dotyczą tego, w jaki sposób GDB wstrzymuje proces i pozwala na przeglądanie zawartości rejestrów, i rna przykład przy użyciu . Czy te rejestry nie są stale używane przez inne …
16 c++  debugging 

2
Czy konwersja metody C ++ na funkcję C z argumentem wskaźnika jest akceptowalnym wzorcem?
Używam C ++ na ESP-32. Przy rejestracji timera muszę to zrobić: timer_args.callback = reinterpret_cast<esp_timer_cb_t>(&SoundMixer::soundCallback); timer_args.arg = this; Tutaj dzwoni zegar soundCallback. I to samo podczas rejestracji zadania: xTaskCreate(reinterpret_cast<TaskFunction_t>(&SoundProviderTask::taskProviderCode), "SProvTask", stackSize, this, 10, &taskHandle); Tak więc metoda jest uruchamiana w oddzielnym zadaniu. GCC zawsze ostrzega mnie przed tymi konwersjami, ale działa …
16 c++  c  functions 

3
Kiedy powinienem używać string_view w interfejsie?
Korzystam z biblioteki wewnętrznej, która została zaprojektowana tak, aby naśladować proponowaną bibliotekę C ++ , a czasami w ciągu ostatnich kilku lat widzę, że jej interfejs zmienił się z używania std::stringna string_view. Dlatego sumiennie zmieniam kod, aby dostosować się do nowego interfejsu. Niestety, muszę przekazać parametr std :: string i …

5
Idiomatyczne użycie wyjątków w C ++
Wyjątkiem isocpp.org FAQ Zjednoczone Nie używaj rzutu, aby wskazać błąd kodowania podczas używania funkcji. Użyj aser lub innego mechanizmu, aby albo wysłać proces do debugera, albo zawiesić proces i zebrać zrzut awaryjny dla programisty do debugowania. Z drugiej strony standardowa biblioteka definiuje std :: logic_error i wszystkie jego pochodne, które …
16 design  c++  exceptions 

5
C ++: Czy klasa powinna posiadać lub obserwować swoje zależności?
Powiedzmy, że mam klasę, Foobarktóra używa (zależy od) klasy Widget. W Widgetdawnych czasach wolud może być zadeklarowany jako pole Foobar, a może jako inteligentny wskaźnik, jeśli zachodzi potrzeba zachowania polimorficznego, i zostanie zainicjowany w konstruktorze: class Foobar { Widget widget; public: Foobar() : widget(blah blah blah) {} // or std::unique_ptr<Widget> …

6
Dlaczego umieszczamy funkcje członka prywatnego w nagłówkach?
Odpowiedź na pytanie, dlaczego umieszczamy prywatne zmienne składowe w nagłówkach C ++, jest taka, że ​​rozmiar klasy musi być znany w punktach, w których deklarowane są instancje, aby kompilator mógł wygenerować kod, który odpowiednio porusza się po stosie. Dlaczego musimy umieszczać prywatnych członków w nagłówkach? Ale czy istnieje jakikolwiek powód …
16 c++  history 

5
Funkcje C ++ „całego zespołu”?
W C ++ funkcje takie jak wyjątki wpływają na cały program: możesz je wyłączyć w całym programie lub musisz postępować z nimi w całym kodzie. W słynnym artykule na temat C ++ Report : Wbrew intuicji, trudną częścią kodowania wyjątków nie są jawne rzucanie i łapanie. Naprawdę trudną częścią korzystania …


8
Dlaczego C ++ jest nadal „hybrydowy”
W pokrewnym pytaniu wyjaśniono, dlaczego C ++ nie jest kompatybilny z C w wielu aspektach. Jednak C ++ jest nadal językiem „hybrydowym” *. I niestety wielu programistów nadal uważa C ++ za „C ze strumieniami i wbudowanymi łańcuchami”. Powoduje to naprawdę źle napisany kod, który nie jest ani C ++ …

9
Jak skutecznie radzić sobie z ogromnymi projektami Linux / makefile?
Aplikacje Windows pracuję w C ++ od około 10 lat. Niedawno zacząłem zagłębiać się w niektóre projekty Linuksa i nie mogę znieść, jak jestem nieproduktywny ... Szybko się uczę i od pewnego czasu używam Linuksa jako podstawowej platformy. Czuję się bardzo dobrze z powłoką, zasadami systemu operacyjnego i graficznym interfejsem …
16 c++  linux 


3
Od czego zacząć naukę korzystania z bibliotek Boost?
Boost został niedawno udostępniony w projekcie, nad którym pracuję, i nie mam z nim dużego doświadczenia. Biblioteka ma tak wiele części i funkcji, że trudno jest wiedzieć, od czego zacząć ją uczyć - zwłaszcza, że ​​będę się jej uczył podczas tworzenia kodu produkcyjnego (więc nie może mnie to zbytnio spowolnić). …
16 c++  boost 


5
Czy ktoś może wyjaśnić, jak działa GUI i kiedy powinienem zacząć z niego korzystać? [Zamknięte]
W obecnej formie to pytanie nie pasuje do naszego formatu pytań i odpowiedzi. Oczekujemy, że odpowiedzi poparte będą faktami, referencjami lub wiedzą fachową, ale to pytanie prawdopodobnie będzie wymagało debaty, argumentów, ankiet lub rozszerzonej dyskusji. Jeśli uważasz, że to pytanie można poprawić i ewentualnie ponownie otworzyć, odwiedź centrum pomocy w …
16 c++  gui 

4
Czy używać flagi -edantic w g ++ czy nie?
Uczę się C ++ i używam g ++ na Linuksie do ćwiczeń. Chcę wiedzieć, czy ludzie pracujący jako programiści używają flagę g ++ -antic, a także jej znaczenie w świecie rzeczywistym. Co z innymi kompilatorami, czy one również na to pozwalają? Czy stało się to de facto standardem? Interesuje mnie …
16 c++  gcc 

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.