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.

6
_DEBUG vs NDEBUG
Której definicji preprocesora należy użyć do określenia sekcji kodu do debugowania? Użyj #ifdef _DEBUGlub #ifndef NDEBUGczy jest lepszy sposób, aby to zrobić, np. #define MY_DEBUG? Myślę, że _DEBUGjest to specyficzne dla Visual Studio, czy standard NDEBUG?
142 c++  c  debugging 


4
Czy wartość przekazywana jest rozsądną wartością domyślną w C ++ 11?
W tradycyjnym C ++ przekazywanie wartości do funkcji i metod jest powolne w przypadku dużych obiektów i generalnie jest źle widziane. Zamiast tego programiści C ++ mają tendencję do przekazywania referencji, co jest szybsze, ale wprowadza różnego rodzaju skomplikowane pytania dotyczące własności, a zwłaszcza zarządzania pamięcią (w przypadku, gdy obiekt …
142 c++  coding-style  c++11 

4
Zdefiniuj metodę statyczną w pliku źródłowym z deklaracją w pliku nagłówkowym w C ++
Mam mały problem z pracą z metodami statycznymi w C ++ Przykład .h: class IC_Utility { public: IC_Utility(); ~IC_Utility(); std::string CP_PStringToString( const unsigned char *outString ); void CP_StringToPString( std::string& inString, unsigned char *outString, short inMaxLength ); static void CP_StringToPString( std::string& inString, unsigned char *outString); void CP_StringToPString( FxString& inString, FxUChar *outString); …

5
Wzmocnij Statechart vs Meta State Machine
Najwyraźniej boost zawiera dwie oddzielne biblioteki dla maszyn stanowych: Statechart i Meta State Machine (MSM). Slogany podają bardzo podobne opisy: Boost.Statechart - Dowolnie złożone maszyny o skończonych stanach można zaimplementować w czytelnym i łatwym w utrzymaniu kodzie C ++. Meta State Machine - bardzo wydajna biblioteka dla ekspresyjnych maszyn skończonych …

7
Wywołanie konstruktorów w C ++ bez nowego
Często widziałem, że ludzie tworzą obiekty w C ++ używając Thing myThing("asdf"); Zamiast tego: Thing myThing = Thing("asdf"); Wydaje się, że to działa (używając gcc), przynajmniej tak długo, jak długo nie ma żadnych szablonów. Moje pytanie, czy pierwsza linia jest poprawna, a jeśli tak, to powinienem jej użyć?
142 c++ 



3
Jak sortować za pomocą lambda?
sort(mMyClassVector.begin(), mMyClassVector.end(), [](const MyClass & a, const MyClass & b) { return a.mProperty > b.mProperty; }); Chciałbym użyć funkcji lambda do sortowania niestandardowych klas zamiast wiązania metody instancji. Jednak powyższy kod powoduje błąd: błąd C2564: „const char *”: konwersja stylu funkcji na typ wbudowany może przyjąć tylko jeden argument Działa …
142 c++  sorting  lambda  char  const 

30
Jak ustalić, czy ciąg jest liczbą w C ++?
Miałem spory problem z napisaniem funkcji, która sprawdza, czy ciąg jest liczbą. W przypadku gry, którą piszę, muszę tylko sprawdzić, czy wiersz z czytanego pliku jest liczbą, czy nie (będę wiedział, czy jest to parametr w ten sposób). Napisałem poniższą funkcję, która moim zdaniem działała płynnie (lub przypadkowo wyedytowałem, aby …
142 c++  visual-c++ 

9
Najlepsza dokumentacja dla Boost: asio?
Dokumentacja dostępna na stronie boost jest ... ograniczona. Z tego, co przeczytałem, generalnie zgadzam się, że po prostu trudno jest znaleźć dobrą dokumentację dotyczącą biblioteki boost :: asio. Czy tak jest naprawdę? Jeśli tak, dlaczego? Uwagi: Znalazłem już stronę internetową Asio (bez funkcji boost) - a dokumentacja wygląda na identyczną …
141 c++  boost  boost-asio 

6
Tworzenie własnych Iteratorów
Próbuję nauczyć się C ++, więc wybacz mi, jeśli to pytanie pokazuje brak podstawowej wiedzy, widzisz, faktem jest, że mam brak podstawowej wiedzy. Potrzebuję pomocy przy tworzeniu iteratora dla klasy, którą stworzyłem. Mam klasę „Kształt”, która zawiera zbiór punktów. Mam klasę „Piece”, która odwołuje się do Shape i definiuje pozycję …
141 c++  iterator 

5
zamieszanie podczas konwersji stringstream, string i char *
Moje pytanie można sprowadzić do tego, gdzie stringstream.str().c_str()w pamięci znajduje się zwracany ciąg i dlaczego nie można go przypisać do const char*? Ten przykład kodu wyjaśni to lepiej niż ja #include <string> #include <sstream> #include <iostream> using namespace std; int main() { stringstream ss("this is a string\n"); string str(ss.str()); const …

12
Wygodna inicjalizacja struktury w C ++
Próbuję znaleźć wygodny sposób na zainicjowanie struktur „pod” C ++. Rozważmy teraz następującą strukturę: struct FooBar { int foo; float bar; }; // just to make all examples work in C and C++: typedef struct FooBar FooBar; Jeśli chcę wygodnie zainicjalizować to w C (!), Mógłbym po prostu napisać: /* …

7
Jak mogę określić ścieżkę [DllImport] w czasie wykonywania?
W rzeczywistości mam C ++ (działającą) bibliotekę DLL, którą chcę zaimportować do mojego projektu C #, aby wywołać jej funkcje. Działa, gdy określę pełną ścieżkę do biblioteki DLL, na przykład: string str = "C:\\Users\\userName\\AppData\\Local\\myLibFolder\\myDLL.dll"; [DllImport(str, CallingConvention = CallingConvention.Cdecl)] public static extern int DLLFunction(int Number1, int Number2); Problem polega na tym, …
141 c#  c++  dll  constants  dllimport 

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.