„Przedwczesna optymalizacja jest źródłem wszelkiego zła” Myślę, że wszyscy możemy się zgodzić. I bardzo się staram tego uniknąć. Ale ostatnio zastanawiałem się nad praktyką przekazywania parametrów przez const Reference zamiast Value . Zostałem nauczony / nauczony, że nietrywialne argumenty funkcji (tj. Większość typów nieprymitywnych) powinny być przekazywane przez odniesienie do …
Domyślnym zachowaniem assertw C ++ jest brak działania w kompilacjach wersji. Zakładam, że dzieje się tak ze względu na wydajność i być może w celu uniemożliwienia użytkownikom wyświetlania nieprzyjemnych komunikatów o błędach. Twierdzę jednak, że sytuacje, w których assertstrzeliłby, ale został wyłączony, są jeszcze bardziej kłopotliwe, ponieważ aplikacja najprawdopodobniej ulegnie …
Ja rozumiem , że według specyfikacji C ++ nie ma czegoś takiego jak „metoda”, a niektóre (wiele? Większość?) Programiści C ++ rozważyć „metoda” być Java-ism. Z drugiej strony, nawet na forum C ++ ludzie wydają się mówić o metodach bez drgań. Szukam znanych konwencji lub powszechnych praktyk dotyczących tej terminologii. …
To makro można zdefiniować w nagłówku globalnym lub lepiej jako parametr wiersza polecenia kompilatora: #define me (*this) I przykład użycia: some_header.h: inline void Update() { /* ... */ } main.cpp: #include "some_header.h" class A { public: void SetX(int x) { me.x = x; me.Update(); } void SomeOtherFunction() { ::Update(); } …
Czy kod int a = ((1 + 2) + 3); // Easy to read działa wolniej niż int a = 1 + 2 + 3; // (Barely) Not quite so easy to read lub są nowoczesnymi kompilatorami wystarczająco sprytnymi, aby usunąć / zoptymalizować „bezużyteczne” nawiasy. Może to wydawać się bardzo …
Wszyscy mówią, że powinienem uczynić mój kod modułowym, ale czy nie jest to mniej wydajne, jeśli używam więcej wywołań metod niż mniejszych, ale większych metod? Jaka jest różnica w Javie, C lub C ++ pod tym względem? Rozumiem, że łatwiej jest edytować, czytać i rozumieć, szczególnie w grupie. Czy zatem …
Zamknięte. To pytanie jest nie na temat . Obecnie nie przyjmuje odpowiedzi. Chcesz poprawić to pytanie? Zaktualizuj pytanie, aby było tematem dotyczącym wymiany stosów inżynierii oprogramowania. Zamknięte 5 lat temu . Ostatnio odświeżyłem mój C ++, na Ubuntu QQ. Uwielbiam strukturę Qt do wszystkiego, szczególnie do tworzenia GUI. W ciągu …
Zamknięte . To pytanie jest oparte na opiniach . Obecnie nie przyjmuje odpowiedzi. Chcesz poprawić to pytanie? Zaktualizuj pytanie, aby można było na nie odpowiedzieć faktami i cytatami, edytując ten post . Zamknięte 5 lat temu . Ostatnio zacząłem się zastanawiać, kiedy programiści powinni płacić za kompilatory. Kompilatory są dostarczane …
Wiele języków podoba C++, C#i Javapozwalają na tworzenie obiektów, które reprezentują typów prostych, jak integeri float. Za pomocą interfejsu klasy można przesłonić operatorów i wykonać logikę, np. Sprawdzanie, czy wartość przekracza regułę biznesową równą 100. Zastanawiam się, czy w niektórych językach można zdefiniować te reguły jako adnotacje lub atrybuty zmiennej …
Chciałbym wiedzieć, czy możliwe jest wykrycie deletebłędu skomentowanego poniżej podczas kompilacji? Szczególnie chciałbym usłyszeć o kompilatorze g ++. ClassTypeA *abc_ptr = new ClassTypeA[100]; abc_ptr[10].data_ = 1; delete abc_ptr; // error, should be delete []
Zamknięte . To pytanie musi być bardziej skoncentrowane . Obecnie nie przyjmuje odpowiedzi. Chcesz poprawić to pytanie? Zaktualizuj pytanie, aby skupiało się na jednym problemie, edytując ten post . Zamknięte 4 lata temu . Wiem, że w niektórych obszarach (na przykład w branży gier) STL nie jest zalecane. Więc moje …
W szkole zaczęliśmy uczyć się języka C w tym roku, pomimo tego, że jestem znacznie przed klasą, a ja nauczyłem się Java, C ++ i C, podczas gdy klasa jest u podstawy C. W każdym razie, dokumentowałem siebie, czytając książki, artykuły, a ja zapytałam moją nauczycielkę, dlaczego mam się uczyć …
Jak wielu z was wie, koncepcje , podejście C ++ do ograniczania możliwych typów argumentów szablonu nie zostało uwzględnione w C ++ 11. Dowiedziałem się, że język programowania D 2.0 ma podobną funkcję do programowania ogólnego. To rozwiązanie wydaje mi się dość eleganckie i proste. Moje pytanie brzmi więc, dlaczego …
Zamknięte. To pytanie jest nie na temat . Obecnie nie przyjmuje odpowiedzi. Chcesz poprawić to pytanie? Zaktualizuj pytanie, aby było tematem dotyczącym wymiany stosów inżynierii oprogramowania. Zamknięte 5 lat temu . Programowałem od wielu lat, ale chciałem uzyskać dyplom, który sprawi, że będę bardziej zatrudniony. Będąc już raz na uniwersytecie, …
Zawsze, gdy używa się terminu RAII, ludzie faktycznie mówią o dekonstrukcji zamiast inicjalizacji. Myślę, że mam podstawową wiedzę na temat tego, co to może oznaczać, ale nie jestem całkiem pewien. Też: C ++ jest jedynym językiem RAII? Co o Java lub C # /. NET?
Używamy plików cookie i innych technologii śledzenia w celu poprawy komfortu przeglądania naszej witryny, aby wyświetlać spersonalizowane treści i ukierunkowane reklamy, analizować ruch w naszej witrynie, i zrozumieć, skąd pochodzą nasi goście.
Kontynuując, wyrażasz zgodę na korzystanie z plików cookie i innych technologii śledzenia oraz potwierdzasz, że masz co najmniej 16 lat lub zgodę rodzica lub opiekuna.