Mircy, mam problem z zadankiem na studia.
Mam sobie klasę, która trzyma liczby typu a+b*sqrt(2) i na niej przeciążone operatory dodawania, mnożenia, inkrementacji itd.
No i mam takie coś:
std::cout << x++ + y + x << "\n";
co się normalnie wykona, z tym że u mnie musi być zrobione tak, że post/pre inkrementacja zostanie policzona dopiero gdy całe wyrażenie się policzy. No i problem polega na tym, że nie wiem jak
  • 10
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

@Pan_wons: Debuguj. Debuguj bardzo dokładnie. Nie wiem też jaka aplikacja. Jeśli masz gdzieś zarządzanie pamięcią to może daj sobie logi do konsoli "zaalokowałem pamięć w module takim i takim", "zwolniłem pamięć w module takim a takim", a potem nie wiem, śledź to, każ ubić cały program etc. Możliwe ,że znajdziesz.

Zastanów się też czy nie wywołujesz jakiegoś obiektu rekurencyjnie - tzw. czy nie wywołujesz obiektu który następnie wywołuje sam siebie
  • Odpowiedz
Cześć, dotychczas #cpp uczyłem się z kursu the new boston, ale postanowiłem przerobić również coś po polsku i wybrałem książkę J. Grębosza "symfonia c++", ale widzę że w książce jest wiele błędów, albo po prostu nie ma rzeczy które były w new bostonie. Co sądzicie o tej książce i jaką pozycję polecielibyście z zakresu c++ jako uzupełnienie mojej nauki w j. angielskim i dlaczego.
#programowanie
  • 24
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

@rfree: Wreszcie ktoś sensownie prawi o Gręboszu zamiast powielać utarte p--------o. Szacun! Sam zaczynałem od Symfonii C++ Standard i na sam początek nauki jest świetna. Pasja C++ jest dosyć stara, ale jest o tyle dobra, że rozkłada na czynniki pierwsze budowę wektora, czy listy; uczy jak samemu coś takiego zaimplementować w razie potrzeby (ostatnio miałem to do napisania na rozmowie kwalifikacyjnej ;)).
  • Odpowiedz
Mam taki problem z Qt

MainWindow mam jakaś tam klasę przypuśćmy że nazywa się A
W konstruktorze MainWindow uruchamiamy metody A i przypisujemy im jakieś wartości.
Teraz mam combobox i wywołuje metode currentIndexChanged podczas zmiany obiektu w Comboboxie

Problem
  • 24
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

Dlaczego skoro

Max dimension size of a thread block (x,y,z): (1024, 1024, 64)
Max dimension size of a grid size (x,y,z): (65535, 65535, 65535)
Nie mogę zrobić czegoś takiego:

dim3
  • 1
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

@m4kb0l: bawilem się ostatnio optymalizacja tych liczb żeby uzyskać najlepszy performance w pewnym specyficznym zastosowaniu. jak chcesz to jutro mogę pomóc to ustawić ( ͡° ͜ʖ ͡°)
  • Odpowiedz
#programowanie #c #bsdsockets #cpp
Szybkie pytanie. Mam dwa kompy, na każdym binduje socket datagramowy, po każdej stronie odpalam dwa wątki - piszący i czytający na tym samym sokecie i adresie partnera. Czy jedna asocjacja pozwala wysyłać równolegle czy muszę po każdej stronie mieć dwa sockety?
  • 1
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

jak tu zlinkować te 2 pliki w cpp+? Żebym mógł wywołać funkcję w pliku main.cpp a jej definicje mieć w funkcja.cpp?
mam takie zawartości plików ale jest błąd: 1>main.cpp(8): error C3861: 'funkcjatest': identifier not found
#cpp #programowanie
funkcja.cpp

#include
  • 9
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

@Rilekt: no idea, to jakiś wymysł M$ jest, ja siedzę na Linuksie i gcc to rozwiązuje to trochę inaczej.
Tzn. wiem po co to ten cały mechanizm jest - przy kompilacji zapisuje dane pośrednie o nagłówkach, żeby następnym razem kompilacja była szybsza, ale czemu potrzebuje do tego tych plików konkretnie - nie wiem, musiałbyś się skonsultować z MSDNem; ja zawsze je usuwałem obydwa i byłem zadowolony (bo przy małych projektach
  • Odpowiedz
Mam funkcję, która rozkłada jakiś tam string na wektor stringów:

std::vector mySplit(const std::string& str);
Czy bezpiecznie jest zadeklarować ją z atrybutem pure?

__attribute__((pure))
  • 8
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

std


@CamelCase: Jedne z warunków, aby funkcja była pure:
* wartość zwracana musi być zależna od parametrów (pamięć globalna na którą wskazuje jeden z parametrów nie jest uznawana za parametr),
* nie może pisać po pamięci globalnej (może natomiast czytać z niej),
* funkcja nie może
  • Odpowiedz
wartość zwracana musi być zależna od parametrów (pamięć globalna na którą wskazuje jeden z parametrów nie jest uznawana za parametr),


@8tab: nieprawda, ten warunek jest inny: wartość zwracana nie może być zależna od niczego innego oprócz parametrów (argumentów) lub/i zmiennych globalnych.
  • Odpowiedz
#programowanie #cpp

Mircy, proszę o pomoc, bo zaraz mnie szlag trafi.

Mam program, w którym jednym przyciskiem chcę otworzyć plik tekstowy z danymi. Natomiast innym przyciskiem chciałbym pobrać wartość z tego otworzonego pliku i wyświetlić na jakimś wskaźniku.

Szybkie
  • 17
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

@zyd_urojony: Nie to nie jest dobre rozwiązanie. A już na pewno nie B6 tak jak na filmiku bo to tak archaiczne narzędzie że szkoda gadać. Najlepiej do nauki tu się sprawdzi Qt bo nie dość że uczy C++ (a nie jakiś archaicznych rozwiązań) to jeszcze ma porządne i wielkoformatowe IDE a także świetną dokumentacje.
  • Odpowiedz
#programowanie #pytanie #pytaniedoeksperta #cpp

Jakie konkretnie techniki optymalizacyjne stosuje się w znanych bibliotekach algebry liniowej (macierze), że nie warto implementować tego samemu? Jeśli zdecyduję się jednak zrobić własną bibliotekę do operacji na macierzach (w ramach ćwiczeń oczywiście), to co zrobić, żeby działało to chociaż w połowie tak szybko (c++)?
  • 6
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

mirki z #programowanie #cpp #csharp gdybyście mieli obecnie zacząć uczyć się programować tak na poważnie to wzięlibyście się za c++ czy c#? jak to wygląda w perspektywie kilku najbliższych lat? widać jakieś trendy? uczyłem się trochę c++ w szkole głównie jednak tylko tyle żeby zaliczyć przedmiot, więc równie dobrze mógłbym zacząć od c# bo moja wiedza z c++ nie jest zbyt rozległa. chciałbym zacząć się porządnie
  • 18
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

@XineX: @Bauzzer: Hehe, dowcipniś.
Pehap to przecież nie język programowania, a ledwo trzymająca sie kupa losowych pomysłów ( ͡° ͜ʖ ͡°)

Przede wszystkim zacząłbym od czegoś, co nie jest obiektowe, ale tak naprawdę nie ma jednego języka który jest dobry na początek, ze względu na to że aby być dobrym programistą trzeba i rozumieć jak komputer działa i umieć rozumieć problemy algorytmicznie.

C dobrze uczy szczegółów sprzętowych tego, jak działa
  • Odpowiedz
Niestety #cpp nie ma delegatów. Mam klasę A, która jako swój składnik posiada wskaźnik na klasę B (klasa A także tworzy klasę B). W jaki sposób mogę z klasy B poinformować klasę A, że się coś zdarzyło? Mogę przechowywać wskaźnik na klasę A i w przypadku zdarzenia wywołać jakąś metodę z klasy A, jednak zastanawiam się czy dałoby się zrobić to tak, aby klasa B nie wiedziała nic o klasie
  • 10
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

@MacFlays: to jest argument za pisaniem std::cout.

Natomiast tutaj jest ::std::cout ( ͡° ͜ʖ ͡°) ta już pedantyczność² wynika z faktu że można std zasłonić szczególnie gdy jesteś w innym namespace np w jakimś gta5:: może być gta5::std:: i wtedy nawet std::string nie oznacza Tego std::string opisanego w standardzie, tylko ten z namespace gta5.

W praktyce, w plikach .h własnych to proponuję mieć konwencję swoją co
  • Odpowiedz
#noob #cpp #programowanie
Chciałbym wczytać kilka linii (powiedzmy n). Niektóre z nich mają po 3 elementy oddzielone spacją, inne 2.
W jaki sposób wczytywać to tak, by kompilator "nie kradł" mi elementów z wierszy poniżej. Przykład:

int n,p,x;
char
  • 7
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach