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.


1
Czym są przewodniki po odliczaniu szablonów i kiedy powinniśmy ich używać?
Standard C ++ 17 wprowadza „przewodniki po odliczaniu szablonów”. Rozumiem, że mają one coś wspólnego z nową dedukcją argumentów szablonu dla konstruktorów wprowadzoną w tej wersji standardu, ale nie widziałem jeszcze prostego wyjaśnienia w stylu FAQ, czym one są i do czego służą. Jakie są przewodniki po odliczaniu szablonów w …


7
C / C ++: Wymuś kolejność i wyrównanie pola bitowego
Czytałem, że kolejność pól bitowych w strukturze zależy od platformy. A jeśli użyję różnych opcji pakowania specyficznych dla kompilatora, czy ta gwarancja będzie przechowywana we właściwej kolejności, w jakiej są zapisywane? Na przykład: struct Message { unsigned int version : 3; unsigned int type : 1; unsigned int id : …

14
Jak zasymulować „Naciśnij dowolny klawisz, aby kontynuować?”
Próbuję napisać program w C ++, w którym przy wpisywaniu przez użytkownika dowolnego znaku z klawiatury powinien on przejść do następnej linii kodu. Oto mój kod: char c; cin>>c; cout<<"Something"<<endl; ale to nie działa, ponieważ przechodzi do następnej linii tylko wtedy, gdy wprowadzam jakiś znak, a następnie wciskam ENTER. LUB …
87 c++ 

4
Dlaczego szablon funkcji nie może być częściowo wyspecjalizowany?
Wiem, że specyfikacja języka zabrania częściowej specjalizacji szablonu funkcji. Chciałbym poznać uzasadnienie, dlaczego tego zabrania? Czy nie są przydatne? template<typename T, typename U> void f() {} //allowed! template<> void f<int, char>() {} //allowed! template<typename T> void f<char, T>() {} //not allowed! template<typename T> void f<T, int>() {} //not allowed!

3
long long int vs. long int vs. int64_t w C ++
Doświadczyłem dziwnego zachowania podczas używania cech typu C ++ i zawęziłem swój problem do tego dziwacznego małego problemu, dla którego dam mnóstwo wyjaśnień, ponieważ nie chcę zostawiać niczego otwartego na błędną interpretację. Powiedzmy, że masz taki program: #include <iostream> #include <cstdint> template <typename T> bool is_int64() { return false; } …
87 c++  gcc  cstdint 

5
Dlaczego C i C ++ obsługują przypisywanie tablic w ramach struktur, ale nie ogólnie?
Rozumiem, że członkowskie przypisywanie tablic nie jest obsługiwane, więc następujące elementy nie będą działać: int num1[3] = {1,2,3}; int num2[3]; num2 = num1; // "error: invalid array assignment" Po prostu zaakceptowałem to jako fakt, stwierdzając, że celem języka jest zapewnienie otwartej struktury i pozwolenie użytkownikowi zdecydować, jak zaimplementować coś, na …

3
Jak zapisać std :: string do pliku?
Chcę zapisać std::stringzmienną, którą akceptuję od użytkownika do pliku. Próbowałem użyć write()metody i zapisuje do pliku. Ale kiedy otwieram plik, widzę pola zamiast ciągu. Ciąg jest tylko pojedynczym słowem o zmiennej długości. Czy std::stringnadaje się do tego czy należy użyć tablicę znaków czy coś. ofstream write; std::string studentName, roll, studentPassword, …
87 c++ 



8
C ++ 11 embrace_back na wektorze <struct>?
Rozważ następujący program: #include &lt;string&gt; #include &lt;vector&gt; using namespace std; struct T { int a; double b; string c; }; vector&lt;T&gt; V; int main() { V.emplace_back(42, 3.14, "foo"); } To nie działa: $ g++ -std=gnu++11 ./test.cpp In file included from /usr/include/c++/4.7/x86_64-linux-gnu/bits/c++allocator.h:34:0, from /usr/include/c++/4.7/bits/allocator.h:48, from /usr/include/c++/4.7/string:43, from ./test.cpp:1: /usr/include/c++/4.7/ext/new_allocator.h: In instantiation …
87 c++  c++11 


1
gcc / g ++: „Nie ma takiego pliku lub katalogu”
g++ daje mi błędy w formularzu: foo.cc:&lt;line&gt;:&lt;column&gt;: fatal error: &lt;bar&gt;: No such file or directory compilation terminated. To samo dzieje się podczas kompilowania programów w C z gcc. Dlaczego? Uwaga: to pytanie zadawano już wiele razy, ale za każdym razem było to specyficzne dla sytuacji pytających. Celem tego pytania jest …
87 c++  c  gcc  g++  c++-faq 


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.