Pytania otagowane jako c++

C ++ jest językiem programowania ogólnego przeznaczenia. Został pierwotnie zaprojektowany jako rozszerzenie do C i ma podobną składnię, ale teraz jest to zupełnie inny język. Ten znacznik służy do pytań o kod (kompilowany) za pomocą kompilatora C ++. Użyj tagu specyficznego dla wersji w przypadku pytań związanych z określoną wersją standardową [C ++ 11], [C ++ 14], [C ++ 17] lub [C ++ 20] itp.

5
Przekazywanie wspólnych wskaźników jako argumentów
Jeśli zadeklaruję obiekt zawinięty we współdzielony wskaźnik: std::shared_ptr<myClass> myClassObject(new myClass()); następnie chciałem przekazać to jako argument do metody: DoSomething(myClassObject); //the called method void DoSomething(std::shared_ptr<myClass> arg1) { arg1->someField = 4; } Czy powyższe po prostu zwiększa liczbę referencji shared_pt i wszystko jest w porządku? A może pozostawia zwisający wskaźnik? Nadal masz …

3
Dynamicznie ładuj funkcję z biblioteki DLL
Przyglądam się plikom .dll, rozumiem ich użycie i próbuję zrozumieć, jak ich używać. Utworzyłem plik .dll, który zawiera funkcję zwracającą liczbę całkowitą o nazwie funci () używając tego kodu, (chyba) zaimportowałem plik .dll do projektu (nie ma żadnych skarg): #include <windows.h> #include <iostream> int main() { HINSTANCE hGetProcIDDLL = LoadLibrary("C:\\Documents …
88 c++  winapi  dll 

7
Dlaczego nie możemy zadeklarować std :: vector <AbstractClass>?
Spędziwszy trochę czasu na rozwijaniu w C #, zauważyłem, że jeśli zadeklarujesz klasę abstrakcyjną w celu użycia jej jako interfejsu, nie możesz utworzyć instancji wektora tej klasy abstrakcyjnej do przechowywania instancji klas potomnych. #pragma once #include &lt;iostream&gt; #include &lt;vector&gt; using namespace std; class IFunnyInterface { public: virtual void IamFunny() = …



5
C ++: Przestrzenie nazw - Jak poprawnie używać w nagłówkach i plikach źródłowych?
Rozważmy parę dwóch plików źródłowych: plik deklaracji interfejsu ( *.hlub *.hpp) i plik jego implementacji ( *.cpp). Niech *.hplik będzie podobny do następującego: namespace MyNamespace { class MyClass { public: int foo(); }; } Widziałem dwie różne praktyki dotyczące używania przestrzeni nazw w plikach źródłowych: *.cpp pokazując praktykę nr 1: …


6
Jak porównać wskaźniki?
Załóżmy, że mam 2 wskazówki: int *a = something; int *b = something; Jeśli chcę je porównać i sprawdzić, czy wskazują na to samo miejsce, czy (a == b) działa?
88 c++  pointers 

7
Używanie continue w instrukcji switch
Chcę przejść ze środka switchinstrukcji do instrukcji pętli w następującym kodzie: while (something = get_something()) { switch (something) { case A: case B: break; default: // get another something and try again continue; } // do something for a handled something do_something(); } Czy to prawidłowy sposób użycia continue? Czy …


4
C ++ auto & vs auto
Czy podczas tworzenia zmiennych lokalnych należy używać (const) auto&amp;lub auto? na przykład: SomeClass object; const auto result = object.SomeMethod(); lub const auto&amp; result = object.SomeMethod(); Gdzie SomeMethod () zwraca wartość inną niż pierwotna - być może inny typ zdefiniowany przez użytkownika. Rozumiem, że const auto&amp; resultjest to poprawne, ponieważ wynik …
88 c++  auto 

8
deklarowanie Priority_queue w C ++ przy użyciu niestandardowego komparatora
Próbuję zadeklarować priority_queue of nodes, używając bool Compare(Node a, Node b)jako funkcji komparatora (która znajduje się poza klasą węzła). Obecnie posiadam: priority_queue&lt;Node, vector&lt;Node&gt;, Compare&gt; openSet; Z jakiegoś powodu rozumiem Error: "Compare" is not a type name Zmiana deklaracji na priority_queue &lt;Node, vector&lt;Node&gt;, bool Compare&gt; daje mi Error: expected a '&gt;' …


7
Kompilowanie programu w C ++ za pomocą gcc
Pytanie: Jak skompilować program w C ++ za pomocą kompilatora gcc? info.c: #include&lt;iostream&gt; using std::cout; using std::endl; int main() { #ifdef __cplusplus cout &lt;&lt; "C++ compiler in use and version is " &lt;&lt; __cplusplus &lt;&lt; endl; #endif cout &lt;&lt;"Version is " &lt;&lt; __STDC_VERSION__ &lt;&lt; endl; cout &lt;&lt; "Hi" &lt;&lt; __FILE__ …
88 c++  gcc  g++  gnu 


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.