Czesc, mam maly problem z przeciazeniem operatora. Otoz kod jest taki:
http://wklej.org/id/1928792/
Czemu nie moge przeładować operatora * tak jak operatora -> ? Przeciążenie, które zrobiłem wygląda mi na operator konwersji, ale doszedłem do tego metodą prób i błędów, nie wiem co tam się wydarzyło.

#naukaprogramowania #cpp
  • 5
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

@Gladias: Awwww, zadanko jest banalne, ale ciekawe ze względu optymalizacji. Musisz po prostu wymyślić inny algorytm, bo twój to O(n*m) nie jest szczytem możliwości. Po za tym masz błąd w programie, źle podaje rozwiązania, przykładowo

8 1

TWTTTWWW
  • Odpowiedz
Uczę się właśnie programować w c++ od podstaw. Jestem totalnym żóltodziobem. W tutoralu według którego się uczę autor postawił zadanie zbudowania programu odliczającego sekundy od 15 do 0 a następnie wyświetlającego napis. Pętla zaczyna się tak:

for(int i=15 i>=0 i--)
Dlaczego i ma być "większe lub równe 0". Inaczej program nie działa. Ale przecież w momencie gdy program wyświetli już 15 to teoretycznie mógłby już się zatrzymać no bo 15>0 i tak
  • 9
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

Dobry wieczór.
Napotkałem na problem podczas pewnego zadania, otóż mam wyświetlić jeden raz linijkę tekstu, która się powtarza w pliku NAPIS.txt (cały plik ma 1000 linijek).
Program zaczyna myśleć, po czym krzak.
(Jeszcze nie rozkminiłem jak uniknąć sprawdzania dwa razy tych samych linijek, (tzn. 1 z 2 i 2 z 1)
Ogólnie to program ma do wykonania z 100 000 pętli, ale innego pomysłu na razie nie mam.

======================
  • 8
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

Wykopki, piszę Proste Kółko i Krzyżyk. Założenie jest takie, że AI losuje sobie pole, ale priorytetem ma być przerwanie/dokończenie linii. Tablica jednowymiarowa, próbowałem dwuwymiarową, ale za dużo pieprzenia się na razie. Ktoś ma jakiś pomysł na pętlę sprawdzającą 2 znaki w linii? Można to zrobić za pomocą ifów, ale właśnie chciałbym pętlą.

#naukaprogramowania #cpp
  • 11
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

@GotoFinal: W najbliższym czasie coś pokombinuję, dziex. Btw. zauważyłem, że muszę usuwać https ( ͡º ͜ʖ͡º). A fejsik działa normalnie ( ͡° ͜ʖ ͡°)
  • Odpowiedz
Mirki i Mirabelki znowu mam problem przy moim #programowanie.
Mam klasę wirtualną Postac i kilka klas które po niej dziedziczą, jedną z nich jest Pajak. Chcę sobie zrobić vector postaci zrobiłem to w pewien sposób tylko, że program od razu się wykrzacza. Dodam, że wcześniej jak próbowałem na parę sposobów to się nie kompilowało.
Mapa.h
Mapa.cpp
Postac.h
  • 9
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

@BloodDeath94: Tworzysz lokalny obiekt pajak i wrzucasz wskaznik na niego do wektora. W momencie kiedy konczy sie funkcja nowypokoj() lokalny obiekt jest usuwany i wskaznik w wektorze wskazuje na smieci. Tworz tak jak Ci kolega wyzej napisal.

Edit:
Nawet wczesniej jest usuwany, przy kazdym obiegu petli jest lokalny obiekt kasowany. Nie zauwazylem petli wczesniej.
  • Odpowiedz
Ohayo!
Budując na linuxie pluginowy runtime Kaiju natrafiłem na problem. Statyczna biblioteka runtime'owa potrafi ładować, odładować i wywołać funkcjonalność pluginowej biblioteki .so.
Problem jest z poprawnym zbudowaniem biblioteki .so:

gdy kompiluję .so z opcją -fPIC, to gcc karze mi skompilować z flagą -fPIC także libKaijuRuntime.a (której funkcjonalności to .so używa) - czy w takim razie muszę wszelkie libki używane przez .so przekompilować z flagą -fPIC?
Jeśli już przekompiluję libKaijuRuntime.a z flagą -fPIC, to kompilacja .so przechodzi,
  • 4
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

@levil: Jak dostaniesz wyjątek to klikasz "retry" i wtedy masz będziesz widzieć callstack. Nie wiem czy da się zrobić blackbox na źródłach vectora, ale chyba z 1-2 ramki stosu w górę i będziesz mieć swój kod, w którym nastąpiło przekroczenie.
  • Odpowiedz
Mam stringa z tysiącem cyfr i chce pomnożyć cyfre pierwszą i drugą
String 7316717...
Pisze cout << word[0]*word[1]<<endl; I wyskakuje 2805 zamiast 21
Próbowałem inne operacje i tylko odejmowanie poprawnie dało 4
Chyba trzeba przekonwertować stringa na inta tylko jak to zrobic z tak dużą liczbą ?

#
  • 12
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

@czarnyzawias: 2015 community.

In Visual Studio 2015, the C++ compiler and standard library have been updated with enhanced support for C++11 and initial support for certain C++14 features.They also include preliminary support for certain features expected to be in the C++17 standard.
  • Odpowiedz
Ponieważ jak się domyślam sesja za pasem i na wszelkich forach pojawiają się ludzie szukający pomocy, zauważyłem, ze często popełniają oni ten sam błąd. Żeby może im sie utrwaliło, dorzuciłem do mojej skrzyni porad kolejną. Może jak przeczytają ludzie z #naukaprogramowania raz jeszcze, to może im się to utrwali - chodzi o wielkość tablic w #jezykc i #cpp
  • 6
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

@lionbest: A o to chodzi - ano właśnie napisane jest, że nic i nie wolno tak robić, choć niektórzy tak doradzają, a niektórym przypadkiem może to nawet zadziałać. Inna rzecz, że nie powinno w ten sposób wogóle opróżniać się bufora wejsciowego, bo to ma prawo nie zadzialać poprawnie.
  • Odpowiedz
@Kaczus2B: Tak jak ten ostatni koleś co wczytywał entery ;-D ustawienie sync_with_stdio na false by pominęło jego pierwszy enter, a jakby przekierował plik to już by mu wszystko znikło, to by się dopiero namęczył ;-D
  • Odpowiedz
Może dzis ktoś będzie w stanie mi pomóc.

http://pastebin.com/HWRLe8hp

Jest sobie pętla która wczytuje do tablicy i ładnie wypisuje każdą cyfrę osobno. Tak jak w kodzie działa idealnie dla jednego przykładu. Ale potrzebuje to zrobić dla n przykładów, więc robię pętle (tutaj w kodzie jako komentarz) i niestety reszta sypie się.
Przy wypisywaniu pierwsza liczba (tab[0]) zawsze wypisze się jako -38, a reszta przesuwa się i jedno miejsce w prawo i dalej już leci poprawnie.
  • 12
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

http://pastebin.com/gZk5x6HE
Mam problem z pętlą na ilość powtórzeń programu. Aktualnie w kodzie jest wykomentowana i program działa poprawnie tylko dla jednego przykładu. Gdy usuwam znaki komentarza dla pętli i cina za każdym razem zwraca "N". W czym może być problem? Wcześniej nie miałem problemów z pętlami na ilość powtórzeń w zadaniach.

Jest to jedno zadań z spoja link

#naukaprogramowania #cpp #spoj
  • 3
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

std::vector initWithDecreasingNumbers(int numberOfElements)
{
std::vector vec;
for (int i = numberOfElements - 1; i >= 0; --i)
{
vec.push_back(i);
  • 5
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach