C ++ to język programowania ogólnego przeznaczenia. Pierwotnie został zaprojektowany jako rozszerzenie C i ma podobną składnię, ale teraz jest to zupełnie inny język. Użyj tego tagu w przypadku pytań dotyczących kodu (który ma zostać) skompilowany za pomocą kompilatora C ++. Użyj znacznika specyficznego dla wersji w przypadku pytań związanych z określoną wersją standardu [C ++ 11], [C ++ 14], [C ++ 17], [C ++ 20] lub [C ++ 23] itp. .
Próbowałem dowiedzieć się, jak mogę użyć std::map do wywoływania funkcji i przekazywania argumentów do tych funkcji na podstawie klucza.
Tłumaczę projekt, który zrobiłem w Pythonie na C++, ale utknąłem w tym i naprawdę nie chcę uciekać się do bałaganu if-else.
Sposób, w jaki to zrobiłem w Pythonie, ....
26 styczeń 2022, 20:48
Jak c++ sprawdzić w no z wyjątkiem tego, że parametr szablonu T zdefiniowany za pomocą szablonu zgłosi lub nie zgłosi wyjątek podczas operacji+. W rzeczywistości musisz sprawdzić dodatek T + T, aby wyrzucić możliwy wyjątek. Napisałem następujący kod: noexcept(T + T), ale niestety taki kod się nie ....
Czy istnieje sposób na zainicjowanie kontenera (np. std::unordered_set<char>) z enumeratorami enum class?
Mam tę klasę:
#include <iostream>
#include <unordered_set>
class Foo
{
public:
inline static const std::unordered_set<char> chars_for_drawing { '/', '\\', '|', '-' };
};
int main( )
{
....
26 styczeń 2022, 17:39
Nie mogę przeanalizować całego tekstu z pliku .txt Ale kiedy uruchamiam kod, nie otrzymuję tego, czego chciałem :(
Mój kod:
int main()
{
/* inside "logMsg.txt"
1/ [111]{1}(text line from 111);
2/ [222]{2}(text line from 222);
3/ [333]{3}(text line from 333);
*/
ifstream textfile("logMsg....
Mam dane wejściowe składające się z n unikalnych punktów (X,Y), które mieszczą się w przedziale od 0 do 2^32 włącznie. Współrzędne są liczbami całkowitymi.
Muszę stworzyć algorytm, który znajdzie liczbę par punktów w odległości dokładnie 2018.
Myślałem o sprawdzeniu w każdym innym punkcie, ale było....
26 styczeń 2022, 15:17
Napisałem klasę abstrakcyjną o nazwie „List”, której zasadniczo używam jako interfejsu dla innych metod implementacji list (takich jak tablica dynamiczna i lista połączona).
Teraz mam metodę o nazwie „dodaj”, z 2 argumentami, pierwszy to dane do dodania, a drugi to pozycja, w której należy dodać. C....
26 styczeń 2022, 14:37
Powiedzmy, że mam pętlę, która wprowadza wartość od użytkownika, a jeśli wartość jest równa zero, to się psuje.
Czy można to zrobić bez dwukrotnego wpisywania tego samego warunku?
Na przykład:
int x;
do
{
std::cin >> x;
if (x)
{
//code
}
} while(x);
Jaki jest najczyst....
Bawiłem się ustawieniami VS Code (chciałem poznać VS Code) i nagle zmieniła się edycja kodu. Wcześniej kod był bardziej kolorowy, a różne słowa kluczowe miały różne kolory. Teraz mój kod jest w większości biały. Pomóż mi wrócić do domyślnych ustawień formatowania kodu.....
26 styczeń 2022, 08:53
Wywołuję funkcję członkowską Q_INVOKABLE z QML. GUI zawiesza się, dopóki funkcja nie zostanie w pełni wykonana. Mam pewne operacje sieciowe w funkcji wywoływanej, dlatego chcę, aby GUI kontynuowało wykonywanie i nie blokowało, aby funkcja została ukończona.
Dokumentacja QT zawiera WorkerScript QML....
26 styczeń 2022, 07:15
W porządku, więc tworzę grę, która wymaga, abym mógł dodawać i usuwać obiekt *Fighter.
Najpierw deklaruję zmienną składową fighter tutaj
std::vector<Fighter*> fighter;
Następnie implementuję Add and Remove w następujący sposób:
void Game::AddFighter(Fighter* f) {
fighter.push_back(f);
}
void ....
26 styczeń 2022, 06:49
Mam klasę Foo z 2 konstruktorami, A i B.
Konstruktor B zawiera ważny kod konfiguracyjny i powinien być zawsze uruchamiany podczas tworzenia instancji obiektu. Na końcu konstruktora A chcę wykonać ważny kod instalacyjny, który znajduje się w B.
Poniżej znajduje się przykład opisanej konfiguracji, któ....
26 styczeń 2022, 06:11
template <typename T>
struct Foo {
T var;
Foo (const T& val){
var = val;
}
};
template <typename T>
void print(Foo<T> func){}
int main() {
Foo f=3;
print(f); // Works
print(3); // Doesn't work
}
f to dobrze zdefiniowana instancja Foo, więc oczywiście działa. Ale skoro 3 można z....
26 styczeń 2022, 04:15
bool is_ascii(const string &word) {
if((unsigned char)(*word.c_str()) < 128){
return true
}
return false
}
Chcę sprawdzić, czy ciąg jest ciągiem ascii. Widziałem też taką funkcję do wykrywania, czy ciąg znaków jest znakami ascii, czy nie:
bool is_ascii(const string &str){
st....
26 styczeń 2022, 03:59
Próbuję przekazać dalej zadeklarować pliki nagłówkowe #include<memory_resource> i #include<deque>. Ale poniższe wydaje się nie działać. To jest pseudokod:
A.hpp.
class memory_resource;
class deque;
class A
{
public:
...
private:
std::pmr::deque<index_t> tempQueue;
}
A.cpp
#include<memor....
26 styczeń 2022, 03:45
Mam swoją losową funkcję generującą liczbę pseudolosową z zakresu:
double Utils::randomNumber(int min, int max)
{
assert(min < max);
srand(time(nullptr));
return (max - min) * ((double)rand() / RAND_MAX) + min;
}
Jednak kiedy wywołuję to w pętli, zawsze otrzymuję ten sam numer, chociaż....
26 styczeń 2022, 02:53
bool check(const char *text) {
char c;
while (c = *text++) {
if ((c & 0x80) && ((*text) & 0x80)) {
return true;
}
}
return false;
}
Co to jest 0x80 i co robi cała tajemnicza funkcja?....
26 styczeń 2022, 02:36
Mam kilka matematycznych stałych numerycznych zdefiniowanych w dużej bazie kodu. Kilka z nich (ale nie wszystkie) jest teraz zduplikowanych w nowym nagłówku C++20 <numbers>. Chciałbym mieć je wszystkie w jednym miejscu; czy dozwolone jest rozszerzenie nagłówka std::numbers o te, które nie zostały....
26 styczeń 2022, 02:09
Próbuję skompilować przykład c++ z wieloma plikami .cpp i .hpp, ale g++ nie znajduje żadnej definicji funkcji składowej.
Main.cpp:
#include <iostream>
#include "Person.hpp"
int main()
{
std::cout << "HELL!\n";
Person a{"Jiraya"};
std::cout << a.getName() << "\n";
a.setName("Ni....
26 styczeń 2022, 01:34
Mam ten kod:
#include <iostream>
int function() {
return 2;
}
int main( void )
{
int integer = 5;
if (integer == 5 && int i = function()) {
std::cout << "true\n";
} else {
std::cout << "false\n";
}
}
Daje błąd:
test.cpp: In function ‘int main()’:
test.cpp:10:23: error: expected ....
26 styczeń 2022, 01:29
Chcę zadać jedno pytanie: mam dwie klasy A i B, kilka typów danych można zdefiniować tylko w klasie B, ale A jako klasa wyższego poziomu również musi używać tych typów danych zdefiniowanych w klasie B. Tak więc zdefiniowałem funkcję szablonu w klasa A, o nazwie define_spline(), mogę użyć wskaźnika ....
26 styczeń 2022, 01:07
W kodzie wykonywane jest wywołanie funkcji. W pierwszym wywołaniu funkcji wykonywane jest przejście przez referencję, wywołując funkcję wskaźnika. W drugim wywołaniu funkcji wykonywane jest przekazywanie wartości w miejscu wywołania funkcji referencyjnej.
Dlaczego tak jest?
#include <iostream>
voi....
25 styczeń 2022, 23:49
Właśnie zauważyłem, że std::filesystem::recursive_directory_iterator używa różnych separatorów ścieżek (tj. / vs \) w zależności od tego, czy jest w systemie Windows, czy Linux, czy istnieje sposób, aby zwracał ścieżki za pomocą '/' aby była spójna w różnych systemach?
W ten sposób otrzymuję ścieżki....
25 styczeń 2022, 23:29
Chcę znaleźć maksymalną długość określonych atrybutów z vector obiektów Person.
Poniżej znajduje się przykład obiektu Person:
Person::Person(string first_name, string last_name, int the_age){
first = first_name;
last = last_name;
age = the_age;
}
Mam vector, który przechowuje Person....
Chcę wstrzymać mój program na klawiszach 0x32, 0x33 i 0x34 i sprawić, by działał ponownie na klawiszu 0x31, jak mogę? Użyłem tego kodu do pauzy na klawiszu 0x32, działa, ale nie mogę go przywrócić do pracy na żądanym klawiszu
if (GetAsyncKeyState(0x32))
{
getchar();
}
....
Mam następującą strukturę projektu: folder o nazwie „src” ze wszystkimi plikami .cpp, folder o nazwie „include” z .h, folder o nazwie „build” dla .o (pliki obiektów), inny folder o nazwie „dep " dla plików .d (zależności) i wreszcie inny folder o nazwie "bin" dla plików wykonywalnych.
Biorąc to pod....