Pytania otagowane jako c++

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

6
Wbudowane funkcje w C ++. Jaki jest sens?
Według tego, co czytam, kompilator nie jest zobowiązany do zastąpienia wywołanie funkcji inline funkcji z jej ciała, ale zrobi to, jeśli to możliwe. To dało mi thinking- dlaczego mamy słowo inline, czy tak jest w istocie? Dlaczego nie wszystkie funkcje Funkcja inline domyślnie i niech postać kompilatora, czy można go …


7
Problem ze stylem kodowania: czy powinniśmy mieć funkcje, które pobierają parametr, modyfikują go, a następnie POWRÓT ten parametr?
Mam trochę dyskusji z przyjacielem, czy te dwie praktyki są tylko dwiema stronami tej samej monety, czy też jedna z nich jest naprawdę lepsza. Mamy funkcję, która pobiera parametr, wypełnia jego element członkowski, a następnie zwraca go: Item predictPrice(Item item) Uważam, że ponieważ działa na tym samym przekazywanym obiekcie, nie …

4
Zrozumienie ramki stosu wywołania funkcji w C / C ++?
Próbuję zrozumieć, w jaki sposób budowane są ramki stosu i które zmienne (parametry) są wypychane do stosu w jakiej kolejności? Niektóre wyniki wyszukiwania wykazały, że kompilator C / C ++ decyduje na podstawie operacji wykonywanych w ramach funkcji. Na przykład, jeśli funkcja miała po prostu zwiększyć przekazaną wartość int o …
19 c++  c  compiler  stack 

8
C ++ do znajomego lub nie do znajomego
W tym semestrze na studiach mam programowanie obiektowe z kursem c ++ i uczyliśmy się o funkcjach przyjaciela. Instynktownie ich nie lubię za to, że potrafią ominąć zabezpieczenia zapewniane przez enkapsulację i ukrywanie danych. Przeczytałem kilka artykułów w Internecie, a niektórzy uważali, że to dobry pomysł, jeśli ma uzasadnione zastosowanie. …

8
Czy po pierwszym czytasz błędy kompilacji C lub C ++?
Nigdy nie zrozumiałem, dlaczego kompilatory C i C ++ próbują odzyskać po błędach i kontynuować analizę. Prawie zawsze pierwszy błąd generuje strumień fałszywych błędów, które znikną, gdy tylko pierwszy zostanie naprawiony. Po kilku latach doświadczenia po prostu przestałem patrzeć na każdy błąd oprócz pierwszego z każdego pliku. Ponownie uruchamiam kompilator, …

7
Co to jest idiomatyczne?
Rozumiem, że „idiom” to wspólna operacja lub wzorzec, którego w danym języku nie upraszcza składnia języka podstawowego, taka jak przyrost liczby całkowitej: i = i + 1; W języku C ++ ten idiom jest uproszczony przez operatora: ++i; Kiedy jednak ktoś używa terminu „idiomatyczny”, nie jestem pewien, jak go zrozumieć. …
19 c++  idioms 

7
Dlaczego musimy dołączyć .h, podczas gdy wszystko działa, gdy dołączany jest tylko plik .cpp?
Dlaczego musimy dołączyć zarówno pliki, jak .hi .cpppliki, podczas gdy możemy sprawić, że będzie działać wyłącznie poprzez dołączenie .cpppliku? Na przykład: tworzenie file.hdeklaracji zawierających, następnie tworzenie file.cppdefinicji zawierających i uwzględnianie obu w main.cpp. Alternatywnie: tworzenie file.cppdeklaracji / definicji zawierających (bez prototypów), w tym main.cpp. Oba działają dla mnie. Nie widzę …
18 c++  c  headers  linking  include 

2
Dlaczego C jest tak wysoki w indeksie popularności TIOBE, podczas gdy C ++ też jest tutaj poniżej, ale nie tak popularny? [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ą specjalistyczną, 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 …



3
Dlaczego operator strzałki w C ++ nie jest tylko aliasem *.?
W c ++ operator * może być przeciążony, na przykład iteratorem, ale operator strzałki (->) (. *) Nie działa z klasami, które przeciążają operatora *. Wyobrażam sobie, że preprocesor mógłby z łatwością zastąpić wszystkie wystąpienia -> znakiem (* left) .right, i dzięki temu iteratory byłyby łatwiejsze do zaimplementowania. czy istnieje …
18 c++  operators 

8
Czy istnieje język między C a C ++?
Naprawdę podoba mi się prosta i przejrzysta natura C: kiedy piszę kod C, czuję się nieobciążony „nieszczelnymi abstrakcjami” i prawie zawsze potrafię zgadywać, co do zespołu, który tworzę. Podoba mi się również prosta, znana składnia C. Jednak C nie ma tych prostych, pomocnych rysunków, które C ++ oferuje jak klasy, …
18 c++  c 

3
Zalety składni od lewej do prawej
Oglądałem wywiad z Herbem Sutterem na Channel9 i wspomniał na końcu filmu, że składnia od lewej do prawej będzie na szczycie listy życzeń przyszłego standardu C ++ (chociaż przyznaje, że modyfikuje C ++ w ten sposób stworzyłoby zupełnie inną bestię). Oprócz: bardziej zrozumiałe dla ludzi, wyraźniejsze gołym okiem; np //C …

10
Dlaczego dziedziczenie i polimorfizm są tak szeroko stosowane?
Im więcej dowiaduję się o różnych paradygmatach programowania, takich jak programowanie funkcjonalne, tym bardziej zaczynam kwestionować mądrość koncepcji OOP, takich jak dziedziczenie i polimorfizm. Po raz pierwszy dowiedziałem się o dziedziczeniu i polimorfizmie w szkole, a polimorfizm wydawał się wtedy wspaniałym sposobem na pisanie kodu ogólnego, który pozwalał na łatwą …

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.