jeśli się nie mylę, to obiekt (zmienna) i tak jest de facto wskaźnikiem na tenże obiekt, więc nie będzie problemu.
Nie da rady. Zwróć uwagę, że w zasadzie typ argumentu funkcji nie jest taki sam, jak typ zmiennej globalnej (tablica), a tylko kompatybilny (de-facto wskaźnik na tablicę, chociaż to taka namiastka referencji w C). Jedynie możesz "zenkapsulować" obiekt, tzn. stworzyć globalną strukturę ze wskaźnikiem na tablicę i rozmiarem i coś takiego przekazać do...
Obie metody są dobre. W metodzie A definiujesz wskaźnik na tablicę obiektów typu struktura, a następnie alokujesz pamięć na 10 tego typu obiektów. I to jest metoda prostsza. Metoda B jest bardziej złożona. Nie alokujesz od razu jednej tablicy na wszystkie elementy, ale tworzysz tablicę wskaźników, z których każdy dopiero wskazuje na obiekt typu struktura,...
Poprzez 'new' tworzysz wskaźnika na tablicę obiektów, tylko samą tablicę. Ponieważ nie ma metody podania parametrów do konstruktorów dla obiektów w tablicy, użyta klasa musi posiadać kontruktor domyślny tj. bezparametrowy. Aktualnie podałeś kontruktor 'oceny(int)' - z parametrem int więc nie da się utworzyć tablicy takich obiektów. Poza tym masz jakąs...
Zrób liste obiektów "osoba" opartą na wskaźnikach. Albo "bardziej profejsonalnie" byłoby zrobić obiekt "zarządca_listy", który przechowuje wskaźnik do pierwszego elementu i ma metody typu "dodaj" i "usuń".
Zgodnie z podpunktem 9 p. 6.5.6 oba odejmowane wskaźniki muszą wskazywać na elementy tej samej tablicy lub na element tuż za tablicą. Jeszcze podpunkt 7 mówi, że na potrzeby punktu 6.5.6 wskaźnik do obiektu, który nie jest tablicą, liczy się jak wskaźnik do tablicy elementów danego typu o długości 1. Czy (char*) NULL wskazuje na obiekt? Zgodnie z punktem...
więc jak utworzyć tablice wskaźników?
>W sumie po dodaniu wskaźnika do słownika „nadrzędnego”, odtworzyć >mogę słowo wspinając się aż do napotkania nil’a" Albo: aż znajdziemy wszystkie litery szukanego znaku a będzie pod danym adresem zapisane tłumaczenie. W każdym razie zgodzę się że znacznik jest niepotrzebny. >Zamiast dodawać string z tłumaczeniem dodajmy wskaźnik,...
error C2679 dostajesz, bo nie masz zdefiniowanego konstruktora kopiującego. Jak tylko go stworzysz, dostaniesz błąd o niezgodności typów albowiem: obserwowane *tab[13]; deklarujesz tablicę wskaźników do obiektów, i masz do tego prawo, ale zaraz potem tab[li]=spolki(tablica[i...
Witam, Mam taki problem: Mam sobie klasę car, w której jest 50-elementowa tablica wskaźników na obiekty innej klasy. Jak poprawnie utworzyć w programie tablicę obiektów typu car, aby te wskaźniki (te stablicowane w obiektach klasy car w tablicy) się nie sypały? Bo zauważyłem, że czasami są zupełnie bzdurne i psują mi cały program. Aktualnie ratuję się...
No to ta metoda musi jako argument przyjmować wskaźnik na obiekt danej klasy i podajesz jej początek tablicy i coś robisz z tym.
Nie wiem ja Ty tam uważasz, ale zbudowałbym sobie kalendarzyk w oparciu o obiekty ( nie masz tego w kodzie ) a tak chyba najprościej to zrobić Powiedzmy obiekt TRok, wewnątrz lista lub tablica wskaźników do obiektów typu TMiesiac a w miesiacach to juz tylko TDzien który obrazuje konkretna data. Każdy dzień, miesiąc, rok ma własne metody i właściwości...
Podpinasz obiekt pod wskaźnik, a gdy umieścisz go w tablicy to same będą się zliczały. Przepraszam za brak polskich liter ale odroid coś fiksuje.
Epokowe odkrycie to nie jest, zapewne wszystko co już było do napisania na ten temat zostało już (gdzieś - tylko gdzie :) ) napisane... Dziedziczenie i polimorfizm to podstawy, "hermetyzacja" to kwestia podziału nagłówków na interfejs (publiczny) i implementację (prywatny). Dziedziczenie robi się tak: struct klasaBazowa { int atrybut1; };...
Coś zrobiłem nie tak? strcat(uzyt,PathFind); strcat(uzyt,"/places.sqlite\0&q... Nie widzę definicji uzyt, ale z wcześniejszych postów wróżę jest to obiekt klasy string, którego brutalnie nadpisałeś ciągiem znaków z ścieżki. Ciekawy jestem czy nie dostałeś ostrzeżeń podczas kompilacji, ponieważ funkcja strcat spodziewa się jako...
Niestety tak nie jest, gdyż gromadzisz potem te wskaźniki w kolejnej tablicy... Więck każdy jest użyty. Ale wskaźnik to przecież adres w pamięci i kompilator wie czy w programie się do niego odwołuje czy nie, to po co najpierw ładuje wszystkie zmienne/stałe do pamięci i nie sprawdza czy w ogóle są wykorzystane w programie. Przecież jeżeli wykomentuję...
To tak: Dajesz argument do konstruktora fstream, a przecież wcześniej ten obiekt stworzyłeś (przed pętlą). Powinieneś mieć więc zrobić coś takiego:
Bo tab nie jest wskaźnikiem, tylko adresem tablicy. Tablica dwuwymiarowa w C (C++) to nie to samo, co tablica wskaźników do tablic (trzeci przypadek), chociaż odwołanie do elemntu wugląda tak samo (ale nie działa tak samo). W drugim przypadku tab jest adresem tablicy, której elemantami są tablice. Wobec tego *tab jest adresem pierwszej tablicy (wewnątrz...
myślałem o instrukcjach wybory switch(x) w której to argument x byłby poziomem w menu, a w tych switch(x) były by zaś takie same switch(y) gdzie y to byłby poziom podmenu ale niewiem czy takie coś to dobre myślenie. Za dużo niepotrzebnego kodzenia, lepszy wyborem jest pewna struktura opisująca obiekt, bardzo przydatne wskaźniki na funkcje, wskaźniki...
Zmiany sa tylko lokalnie w metodzie bo z tego co pamiętam to nie dostaje ona wskaźnika do obiektu a kopie obiektu. Ale to - totalna bzdura, metoda dostaje właśnie wskaźnik do obiektu a nie jego kopię. Racja pomyliłem się. W przypadku obiektów przekazywana jest kopia ale wskaźnika. Dlatego przypisanie nowego obiektu to tego wskaźnika nie powoduje zmiany...
po takiej deklaracji w sekcji .ssitag lądują wskaźniki do tej tablicy, a nie sama tablica, jak wymusic żeby całosć tam wylądowała? Musiałbyś albo w tablicy umieścić nie napisy ("...") tylko po prostu wskaźniki do tych napisów (osobnych obiektów), z których każdy miałby również ten atrybut. Druga opcja to zrobienie tablicy tablic (obecnie masz tablicę...
Robisz najprościej tablicę elementów TImage i odwołujesz się jak do normalnego image o nazwie będącej zmienną. Wszak To jest dokłądnie to samo. Czemu wskaźnik? for(int i=0;i<10;i++) ImagesTable[i]=TImage->Create... . . . for(int i=0;i<10;i++) ImagesTable[i]->Free()... (mogę mieszać, nie uzywam...
Ja tam nie widzę żadnych wskaźników. O fajnie że wpadłeś, bo tu trzeba fachowego oka. Chodzi mi o to że obiekt klasy (czyli jego pola i tablica metod wirtualnych) jako lokalny w funkcji, tworzony jest na stosie. Czyli faktycznie przekazując obiekt jako rezultat domyślam się że po prostu niejawnie jest przekazywany jako wskaźnik na obiekt a nie całość...
Proszę o pomoc z sortowaniem tablicy wskaźników na obiekty różnych typów. Tablica działa poprawnie, niestety sortowanie - nie. Przypuszczam, że zamiast skutecznie zamieniać miejscami wskaźniki w tablicy ja sortuję kopie tych wskaźników, ale próby zmian kończą się protestami kompilatora. W tekście zapytania umieszczam problematyczny kod z głównej funkcji,...
Próbując zapisać obiekt w taki sposób jak to chciałeś zrobić (i również jak koledzy sugerowali) - nie wyjdzie Ci to co byś chciał. Wskazywana zmienna jest tylko wskaźnikiem do struktury obiektu. Niestety klasa jest skomplikowaną strukturą, która oprócz zmiennych przechowujących wartości może przechowywać również wskaźniki do innych struktur, etc. Zapis...
Usiłuję napisać funkcję, która będzie rozpoznawała na jaki obiekt (z jakiej klasy) wskazuje wskaźnik, następnie w zależności od rodzaju klasy zapisze do pliku 1, 2, 3 lub 4 i dopiero dane zawarte w obiekcie danej klasy. Próbuję zrobić to za pomocą dynamic_cast<NazwaKlasy*>(wskaźnik... aby sprawdzić czy mam do czynienia ze wskaźnikiem...
Jestem raczej początkujący w tej dziedzinie z tąd to pytanie. dzięki za odpowiedź. Kombinowałem i wybrałem jeszcze inne rozwiązanie, a mianowicie tablica wskaźników(a tak pisze gdyby ktoś jeszcze kiedyś szukał). Tworze sobie obiekty klasy poleceniem new i tworze do nich wskaźniki znajdujące się w tablicy(vector). Tym sposobem mam wskaźnik do każdego...
bez gwiazdek char *napis[10] = {"HELLO"}; -> to jakies ufo - wskaznik na tablice ewentualnie tablica wskaznikow [; powinno byc: char napis[]="HELLO"; LCD_WyslijLitery(*napis); -> kolejne ufo (podstawy c), do funkcji powinienes przekazac adres pierwszego elementu, a tak sie sklada, ze nazwa tablicy jest wskaznikiem na pierwszy element, czyli: LCD_WyslijLitery(napis);...
Do tablicy nie są wpisywane obiekty a wskaźniki do nich. Wskaźniki niestety wskazują śmieci w pamięci, bo im nie przypisałeś żadnej konkretnej wartości, np. tak: [syntax=cpp]Figura( int ile ) { ile_punktow = ile; ile_p = 0; tablica = new Punkt*[ile]; // stworzenie obiektów i przypisanie ich wskaźników do tablicy for( int i = 0; i < ile; i++ ) { tablica[i]...
Z góry dziękuje za wszelką okazaną pomoc, czy mógłby ktoś proszę sprawdzić ten kod? Program ma za zadanie stworzyć tablicę wskaźników. z których każdy wskazuje na obiekt o rozmiarze dokładnie odpowiadającym, rozmiarowi przechowywanego w nich ciągu znaków. W książce jest określone że wskaźnik użyty do przechowywania wartości zwracanej z malloc() powinien...
Proszę o pomoc z następującym problemem. Mam plik, w którym są zapisane obiekty z różnych klas (potomnych wobec klasy Czlowiek). Plik poprawnie je zapisuje. Ale mam problem z odczytem. Odczyt ma być zrobiony następująco: 1. program sprawdza jaka liczba jest na początku danego wiersza 2. w zależności od tej liczby odczytuje do końca wiersza elementy...
można użyć tablicy haszujacej i zależnie od klucza pobierać odpowiedni obiekt, potem wykonywać jakąś wspólną metodę która wykonuje akcje
Moim skromnym zdaniem staszne hax0rstwo, przypomina trochę techniki użyte w glibie (taka hax0rska biblioteka dająca m.in pseudo-obiektowość w C). Owszem, da się pisać duże projekty obiektowo w gołym C, ale o ile nie wynika to z długiej historii projektu albo ciężkiego charakteru jego szefa (vide: kernel) to szkoda na to czasu. Obecnie jestem zmuszony...
Ale czemu wrózką? W Pascalu owszem - nadawało się adres. Ale w Delphi po prostu "przypisuje się" zmienną: [syntax=Delphi]var x: Integer; b: Integer absolute x;[/syntax] Prawilnie - stwórz klasę, która udostępni dwie metody dostępu - przez Integer i przez tablicę. W środku obsłużysz zapis, natomiast na zewnątrz nie będziesz szczególnie widział różnicy....
witam, MAm przygotować aplikację z danej tematyki: 1.Podstawowe elementy języka – zmienne i ich typy, operatory, instrukcje sterujące, pętle, funkcje, tablice. 2.Tworzenie typów złożonych –struktury, unie, tablice struktur, wyliczenia. 3.Przetwarzanie strumieniowe – operacje na plikach tekstowych 4.Przetwarzanie strumieniowe –...
Tak, jak napisałeś, to sie raczej nie kompiluje. Deklaracji klas dokładnie nie analizowałem, ale tablica powinna być tablicą wskaźników. de facto niejawnym wskaźnikiem czyli referencją.
obiekcie poza wskaźnikiem next jest tablica. Chodzi mi o sam fragent kodu w procedrze usuwającej. Jeśli jest to tablica statyczna to będzie pamięć zwolniona automatycznie, jeśli masz tam wskaźnik do pamięci alokowanej dynamicznie wewnątrz objektu, to musisz uwzględnić zwalnianie w destruktorze objektu.
BIDMEXI napisał: Tablica jest 2D. Z Twojego kodu to nie wynika: Przekazywane są tablice 2D. Zamieszczam dwa prrogramy - w C i przepisany w JAVIE, aby rozwiać wątpliwości. Cały kod w C. Program pracuje prawidłowo. ComputeFeedForwardSignals(); , źle przełożonej na JAVĘ... Jak zatem powinna wyglądać dobra wersja? [syntax=java]import java.io.BufferedReader;...
Doczytałem, że ma 24, lub 32-bitowe wskaźniki, więc nie będzie problemu, teraz jak zadeklarować tym tablicę? Rozmiar wskaźnika, a rozmiar obiektu (tablicy) to dwie różne sprawy. Nie uzyskasz na AVR obiektów większych niż 32kB. Chcesz większe obiekty to albo musisz je złożyć z mniejszych tak jak próbowałeś na początku, albo zlinkować binarny plik i...
Nie masz zdefiniowanego operatora przypisania ani konstruktora kopiującego dla macierzy. Domyślny operator skopiuje wskaźnik na zaalokowaną dynamicznie tablicę, ale ta tablica zostaje zwolniona w momencie wyjścia z funkcji. W rezultacie zgubisz wskaźnik do tablicy C zaalokowanej z main(), a dostaniesz wskaźnik do zwolnionej pamięci - czyli śmieci.
Witam. Mam kod w JAVIE: Istnieje główna klasa i metoda main , w której następuje utworzenie obiektu klasy innej - KLASA2 . W KLASA2 znajdują się różne metody. Istnieje taka metoda, która wywołuje inne metody: this ? Słowo oznacza parametr ukryty - nazwę obiektu, na rzecz którego metoda Wczytaj i inne metody ( WczytajInput itd) są wywoływane. Czy można...
char (*temp) Gdy mam zwykły wskaźnik np. int *wsk; to przecież nie oznacza że tworzy on miejsce w pamięci dla zmiennej int tylko dla jej adresu. Tak samo char(*temp) Dodano po 10 Intuicyjnie czuje ze moje rozumowanie jest bledne. Szukam tylko gdzie i dlaczego...
Dodatkowym kosztem jest to, że obiekty z metodami wirtualnymi "kosztują" dodatkowe 2 bajty (1 wskaźnik) na obiekt. Jeśli chodzi o new i delete, to można je osobno implementować dla każdej klasy - czyli obiekty pewnych klas można np. alokować z tablicy statycznej zamiast malloc-owania pamięci. Nawet bez obiektów C++ bez ma inne zalety (np. template'y,...
I niestety warning nadal występuje: main.c:37:16: warning: assignment discards 'volatile' qualifier from pointer target type To nie ma znaczenia czy ona jest w RAM - liczy się to, że na obiekt volatile chcesz wskazywać wskaźnikiem nie-volatile. "Poprawić" można albo usuwając volatile z definicji obiektu, albo używając wskaźnika z kwalifikatorem volatile....
Zupełnie naplątałeś... Po pierwsze, nie przejdzie *ple=99.1 . Dlaczego? Bo 'ple' jest wskaźnikiem na unsigned int , więc kompilator nie będzie przypisywał ci wartości zmiennoprzecinkowych do typu całkowitego, więc otrzymujesz ekwiwalent przypisu *ple=99; ... Po drugie, czy ty może dysponujesz debuggerem? Wypadałoby sprawdzić co dzieje się z pamięcią...
Zdaje się że nie za bardzo rozumiem to co napisałeś: W sposobie #2 hlp jest wskaźnikiem na element obiektu typu tablica? tylko jak później wywołać te wartości ? Powiedzmy że w jakiejś innej procedurze wywołuję funkcję : LP(10, 220, 44100); wówczas tworzy się moja tablica. Jak teraz nie wywołując znów LP(....) mam wydostać na przykład 3ci, 4ty oraz 5ty...
Witam. Jeśli jest to język C++ to zamiast struktury zalecałbym zwracanie obiektu. W konstruktorze tworzyłbym tablicę a w destruktorze zwalniał. Nie polecałbym zwracania adresu takiego obiektu przez funkcje tylko normalnie przez wartość. NaszObiekt funkcja(int par1, int par2, int par3,int par4,int par5) { NaszObiekt obiekt; //pracujemy na...
[syntax=cpp]element.imie_nazwisko=(konwe... Prawdopodobnie chciałeś stworzyć nowe stringi, ale tego tak się nie robi. Użyłeś właśnie operatora „przecinka” (nawet mimo tego, że są tam nawiasy). To co jest powyżej ma taki sens: do element.imie_nazwisko przypisz rozmiar wskaźnika (czyli...
To będzie wyglądało mniej-więcej tak; definiujesz tablicę wskaźników do obiektów: TEdit * tab[ile]; wypełniasz ją: tab[0]=&Edit1; tab[1]=&Edit2; itd A następnie do poszczególnych editów odwołujesz się w ten sposób: tab[0]->Text="adasasdf"; (nie pamiętam w jaki sposób BCB definiuje komponenty, jeżeli tak nie zadziała spróbuj: tab[0]=Edit1; tab[0].Text="adasasdf";...
nie wiem jak działa instanceof w javie ale przechowywanie referencji do innych obiektów czy klas to żaden problem. Deklarujesz sobie jakikolwiek obiekt, który zawiera tablicę wskaźników nawet typu Pointer. W najprostszym z możliwych przypadków bierzesz sobie zwykłą i popularną StringList'ę. Można w niej przechowywać zarówno stringi jak i liczby (wielkości...
Kolego, po pierwsze aż do ARM7 są w architekturze von Neumanna, ARM9 dopiero w Harwardzkiej, w dodatku nie do końca, bo tylko cache instrukcji i danych są rozdzielone. Twój przykład jest bzdurny, bo nie odróżniasz przekazania przez referencję od przekazania referencji do wskaźnika. Po pierwsze zacznij od dokładnego przeczytania K&R, tablice w C NIGDY...
W sumie wynika z tego, obsługa przerwania w C++ nie jest banalna :/ Popatrz na to tak - gdybyś chciał w zwykłym C osiągnąć to samo, tzn. mieć dostęp do jakichś zmiennych w strukturze od "czegoś" (bufory, ustawiona prędkość, ...) to byłoby to równie niebanalne. Generalnie C++ nie jest prostym językiem. Jeśli obiekty danego interfejsu masz globalne,...
W skrócie (w MFC dawno nie grzebałem): 1. pobierasz rozmiar pliku, 2. tworzysz obiekt CString i wywołujesz metodę GetBuffer otrzymując wskaźnik, 3. wczytujesz plik do pamięci pod ten wskaźnik (np. używając CFile ), 4. wywołujesz metodę ReleaseBuffer .
Z cpp jestem świeży ale jakieś próby gier na tabelce/szachownicy zaliczyłem. Przede wszystkim przestrzeń zorganizuj jako tablicę 9x9. Żadnych oddzielnie istniejących pól. Do wszystkiego tablice identycznie numerowanych wskaźników. Jeśli w OOP to pewnie będzie to tablica obiektów.
Witam! Umyśliłem sobie pewną strukturę danych i próbuję ją oprogramować. Potrzebuję przeciążyć operator base operand of `->' has non-pointer type `node'
Musisz sobie zachować parametr przekazany do konstruktora jako właściwość (pole) obiektu. Innej opcji (poza nieprzenośnymi, niskopoziomowymi sztuczkami grzebiącymi w stercie) nie ma. Operatorem sizeof też tutaj nic nie wskórasz, bo on zwraca rozmiar obiektów (typów) znanych w trakcie kompilacji - czyl sizeof(Lista) == 4, bo Lista jest wskaźnikiem a...
dzięki za pomoc krzychoocpp, mam jeszcze jeden problem, chciałbym utworzyć statyczną tablicę stałych obiektów, ale zainicjalizować ją przy pomocy typu wyliczeniowego - jakoś w taki sposób jak w przykładzie poniżej: //--- plik slowo.h --- #ifndef SLOWO_H #define SLOWO_H class slowo { public: enum {znak_a=0, znak_b=1, znak_c=2}; static...
Funkcje wirtualne nie zastępują wskaźników na funkcje - to są wskaźniki na funkcje, czyli technika programowania niekiedy konieczna, której jednak, o ile to możliwe, należy unikać Proceduralne programowanie również jest techniką programowania. Niesie ono również narzut na wykonanie programu. Jednak każdy z nas (chyba każdy:)) godzi się na ten narzut...
Rety, przecież to jest C++. A dlaczego nie użyć operatorów new do tworzenia obiektów (i zapisywania wskaźników w tablicy), a delete do ich kasowania? Pozdrawiam.
Wiele jest pozytywnych efektów użycia wskaźników: 1. Łatwość manipulacji danych (zamiast przepisywać całe obiekty celem zamiany ich miejsc wystarczy tylko zamiana wskaźników; łatwiej przekazać do funkcji wskaźnik, niż cały obiekt) 2. Możliwość korzystania z dużych obszarów pamięci w sposób dynamiczny (rezerwujesz dokładnie tyle pamięci, ile w danej...
Ale ograniczenie składni (a co dopiero brak wskaźnikowania (indexowania)) to już przegięcie. Indeksowanie.. tablice owszem istnieją, ale jako obiekty. Wskaźniki są zastąpione referencjami. Nie ma możliwości dowolnego grzebania po pamięci, dzięki czemu wypada nam cała klasa algorytmów, jak zarządzanie pamięcią (java narzuca swój alokator o którym pisałem)...
Po drugie większość obiektów możesz, a nawet wręcz musisz sobie wektorowo narysować. Taki przycisk rysowany wektorowo to tylko kilkanaście bajtów typu: położenie, wymiary, typ przycisku, stan, kolor, wskaźnik na tekst, czy ewentualnie wskaźnik na grafikę która go wypełnia. A po trzecie, taka funkcja rysująca przycisk/inny obiekt zmienia tylko stan...
Bardzo prosto wytłumaczone są wskaźniki w książce "symfonia c++" Grębosza. Ogólnie bardzo dobry podręcznik dla początkujących, warto troche z niego poczytać ;) Wskaźnik to jak sama nazwa wskazuje obiekt który może wskazywać na inny obiekt, a konkretnie przechowuje jego adres np. int x; //nasza zmienna, na ktora ma pokazywac wskaznik int* wsk; //wskaznik...
Witam. Uczę się programowania w c++ z "Symfonii C++". Mam problem z jednym z zadań podsumowujących z działu "wskaźniki". Proszę o pomoc w rozwiązaniu tego zadania. Napisz funkcję, która zarezerwuje 10 elementową tablicę, a jej adres przekaże wskaźnikowi o nazwie linijka. Ma to być tablica, w której można przechowywać wskaźniki do tablic znaków. Następnie...
Pytam edukacyjnie. A ta struktura ma tylko 3 pola tutaj. W rzeczywistości będzie ona zawierać całą listę dat i czasów, więc będzie duża. Edukacyjnie więc - do wypełniania w pętli służy tablica, a nie rzutowane struktury czy jakieś unie (wspomniane tutaj pomysły z uniami i type-punning są w standardzie języka opisane jako "undefined behaviour", zabronione...
Witam! Mam następujący problem do rozwiązania... Stworzyłem strukturę napisaną w C, która jest szablonem menu wielopoziomowego pewnego programu. Początkowo projektowana była jako klasa w C++ na PCcie, teraz przenoszę ją jako strukturę do C pod AVR. Klasa była prosta, taka żeby łatwo na C przerobić. Problem polega na tym, że składniki struktury menu...
Kompilator nie znalazł funkcji void WyświetlPlansze(int, int), bo nie była zdefiniowana. Jest tylko prototyp tej funkcji w pliku ruch.h. Zdefiniowałeś funkcję o tej nazwie void WyświetlPlansze(int gracz_X, int Pole[2]) - ale ta funkcja nie jest tą zadeklarowaną - to jej przeciążona "siostra" - zamiast dwóch argumentów typu int przyjmuje int i tablicę....
Niedawno "liznąłem" Rust w kontekście aplikacji konsolowych i WebAssembly, a przy tym mam duże doświadczenie w C++, dużo czytałem o zaletach Rust. W moim odczuciu WebAssembly bardziej przypomina tworzenie systemu wbudowanego niż programu na komputer, bo mikrokontroler "otacza się" różnymi układami i urządzeniami wybranymi w zależności od potrzeb, tak...
Oki to zacznę po kawałku od początku... 1) Tworzę sobie tablicę ruchy, która ma być odpowiednikiem planszy do gry... public static int[][] ruchy = new int[15][]; 2) Do tej tablicy tworzę drugą która jedynie przechowuje indeksy do listy - tablica indeksów wypełniona jest kolejnymi liczbami od 0 do 224... public static...
Jeżeli są tworzone dynamicznie to możesz do nich robić wskaźniki: int wskaznik[10]; for(index = index_Ile; index<10; index++) { *wskaznik[index] = new Button(); // czy jakoś tak (jeżeli namieszałem to przepraszam ale pisze w QT a nie w Builderze) } . Wówczas po kolei w tablicy wskaźnik znajdują się...
Czy możliwe jest 'poszerzanie' tablicy (zadeklarowanej wczesnie dynamicznie operwatorem new, albo normalnie, statycznie)? Jeżeli nie, to jak rozwiązać następujący problem: Mamy klasę: class drzewo; {public: int polozenie_x,polozenie_y; char typ; } 'Drzewa' są reprezentowane na ekranie w postaci znaczkow ASCI. 'Drzewa', w zależności od...
Witam ! Zdania na ten temat są podzielone, niby dzisiejsze IDE pozwalają na pokazywanie np jakiego typu jest dana zmienna. Dopiero się uczę, więc proszę zawodowych programistów o odpowiedz. Czy w praktyce stosujecie notacje węgierską ? Bo jeśli tak to sam zacznę ją stosować i wyrabiać już sobie dobre nawyki. Przedrostki notacji węgierskiej : Typy zmiennych:...
Wskaźnik to nic innego jak zmienna przechowująca adres innej zmiennej (lub tablicy, struktury, obiektu). Stosowana jest po to, o czym pisał frohme.
Dodaj jeszcze receptę jak zaimplementować metody wirtualne Recepta: W wczesniej opisanej przykładowej strukturze udającej obiekt można zadeklarować wiele wiszących wskaźników - na inne typy (struct) lub funkcje. Gdy teraz postawimy jakiś wskaznik na funkcję z struktury A na funkcję która była dedykowana strukturze B, to mamy metody wirtualne... Wskazniki...
a mi się zdaje ze delete aaa; usunie tylko pierwszy obiekt tablicy żeby usunąc cała tablice trzeba użyć delete aaaa W tym przypadku - jeżeli new utworzyło całą to i delete usunie całą (stworzyliśmy jeden obiekt zawierający kilka elementów a nie kilka pojedynczych). Jeśli idzie o konstrukcje typu malloc - używanie ich jest w c++ możliwe, ale niepotrzebnie...
Sprawa jest prosta: orientowac sie w asemblerze (wiedziec co w trawie piszczy), znac dobrze C - to jest podstawa. A jak ktos lubi moze sie douczyc roznych wynalazkow. Oczywiście że tak. Chociaż odwróciłbym to. Znać dobrze asembler, i orientować się w C. Prosta sprawa c + asembler = zrobimy wszystko. Jednak bascom (wogóle Basic) naprawdę uczy złych...
Takiego czegoś nie można raczej zrobić: Co miała by robić ta ostatnia instrukcja? Utworzenie tymczasowego obiektu tor i podstawienie (skopiowanie) do tablicy? Skoro potem używa się zestaw jako tablicy to i utworzenie tego jako tablice: [syntax=cpp]tor* zestaw; zestaw=new tor[ilosc];[/syntax] jest potrzebne. Problem polega na tym, że by można było utworzyć...
Witam. Jestem początkujący w C++ i nie mam pojęcia jak mogę zainicjować pola w klasie. Część deklaracji klasy [syntax=cpp]class Pracownik{ private: char pszImie[25]; char pszNazwisko[30]; Data DataUrodzenia; //(obiekt utworzonej poprzednio klasy Data) public: Pracownik(const char* imie, const char* nazwisko, const Data datau_ur); // konstruktor[/syntax]...
Jednak się da, bez konieczności tworzenia osobnych struktur i wpisywania nazw tych struktur w inicjalizacji innych struktur :) Nie wiem czy wszystkie kompilatory to zaakceptują.. typedef struct { u8 flags; // BTN_TRANSPARENT | BTN_TOGGLE | BTN_VISIBLE u16 y_size; u16 x_size; const u8 *file; } btn_vars_t; // STALA struktura we flashu... typedef...
kolego azara czepiasz się. Napisałem przykładowa funkcja i była kopiuj-wklej, z większego programu (a dokładnie z pracy inż), gdzie zmienne globalne miały swoje zastosowanie. Oczywiście, że zmienne globalne mogą mieć swoje zastosowanie... Ale nie tutaj, na bogów. Tym bardziej się dziwię, że kolega używa/użył ich w pracy inżynierskiej. Czyżby wielowątkowość?...
1. Ramka składająca się z nr suwaka i wartości jaką na nim ustawiono. Podrzucę Ci trick, w sumie nie będący trickiem, tylko dobrze zaplanowanym API. Każdy komponent .NET na właściwość Tag , każdemu ze swoich licznych suwaków możesz przypisać Tag = "Hej, ja jestem numer 4" (jak w oddziałach specjalnych, oczywiście tu prostą liczbę) Potem w listenerach...
" TShape tab Musi działać. Tworzysz sobie tablicę wskaźników do TShapa, lokujesz je dynamicznie a identyfikujesz każdego np poprzez jego Tag. Pracowałem na tablicach z około 1500 obiektów utworzonych na podstawie dziedziczenia TShapa i wszystko działało łącznie ze zdarzeniami OnClick, OnMouseMove itp
Proszę o pomoc z następującym problemem. Nie wiem jak w C++ należy poprawnie sprawdzać czy wskaźnik został przypisany do czegoś czy nie. W ANSI C wskaźniki miały po stworzeniu wartość NULL, w C++ wskazują na losowy fragment pamięci. W moim programie tworzę tablicę wskaźników na obiekty klasy i dopiero kiedy jest potrzeba to przypisuję im adres nowego...
W C# chyba do wszystkich klas odwołuje się przez referencje, tylko do typów prostych nie. Tak w skrócie. Jeśli w C# tworzysz tablice: Klasa[] x = new Klasa[3]; To stworzysz tablice referencji na Klasy, więc to jest C++'owy odpowiednik tablicy wskaźników. Potem przypisujesz tylko odpowiednim polom referencje na Klasa.
le jeżeli utworzę tablicę globalną jak poniżej: static const uint8_t tablica Nie. Co zrobi kompilator tego nie wiesz, bo modyfikatory static i const nie służą określaniu położenia zmiennych, czy tablic w pamięci. const ci jedynie daje tyle, że próba modyfikacji takiej tablicy powinna zakończyć się błędem podczas kompilacji. Oczywiście w praktyce, na...
Jeśli są to je po prostu wskaż a nie bij piany typu "może, ale nie musi". Tylko nie pisz o kasie, bo ta "troska" wyrażana przez osobę nie znajacą obiektu powala na kolana. Nie wiem czemu odpowiadasz w takim stylu. Nie atakuję Cię tylko staram sie rzetelnie tłumaczyć zagadnienie. Piszę jakie jest prawo i nie oceniam. W wielu miejscach tablice mają sens,...
Witam, ma zaprojektować słownik (<map>), który zwraca tablicę (<vector>) wskaźników na obiekty klasy Slav * odpowiadające kluczowi zwrqacanemu przez enum. Enum mam, jestem świadom, że zwraca int. A mój kod wygląda tak: [syntax=c]vector<Slav *>vectorOfObjects; map<int,vector<Slav *>>mapOfObjects[/syntax], gdzie Slav to klasa....
Nie wiem po co się tak męczyć. Pamięć zewnętrzna jest zamapowana do tej samej przestrzeni, w której jest wewnętrzna pamięć ram. Można więc posiadać wskaźnik, który będzie wskazywał komórkę w wewnętrznej pamięci, a po przypisaniu innego adresu może wskazywać na zewnętrzną pamięć. Gdyby napisać: struct jakis_skomplikowany_obiekt* my_obj = (void*)0x2345;...
4. Brakuje mi zliczania ilości oddanych strzałów To akurat jest - na końcu gry podaje tą ilość. Co do 1 - hmm ciekawa opcja, co do 3 to ciężko z tym może być bo np. w obiekcie pancernik mam tablice 4 wskaźników na maszty i nie wiem, co jest obok... A co do 2 - hmm trzeba by było pokombinować. :D Ale zakładam, że użytkownik będzie wpisywał same liczby.
Z drugiej strony najprzyjemniejszy OS byłby taki, ktorego uzywa się równie łatwo co QThread'ów QThread to przecież lekka abstrakcja nad POSIX, zapewne bardzo podobna do std::thread. Do zalet trzymania się standardu łatwo się przekonać - wystarczy np zauważyć, że mając na mikrokontrolerze pthread i runtime POSIXowy można na nim z powodzeniem uruchomić...
Masz rację, ale tylko częściowo. Co ma cel naszych działań do języka czy środowiska? Aplikację konsolową można napisać również w C#, Delphi, BCB i pozostałych. Drzew binarnych to się uczą przyszli programiści, a nie ludzie, którzy chcą dla siebie sklecić narzędzie przydatne w codziennej pracy. Sztuka dla sztuki? Nawet nie będzie wiedział, do czego można...
Sam temat dochodzi do niesmacznego (dla mnie) poziomu, w którym jedni starają się za wszelką cenę wykazać, że asm jest jedynym słusznym językiem, że w nim można napisać wszystko i jest to lepsze od wszystkiego innego, a drudzy starają się przez całkowite zaprzeczenie pokazać wyższość drugiego. Radzę się powstrzymać, gdyż temat podchodzi pod np. przełączanie...
Z6/Z7 kondensator i rezysotr może być gasikiem chociaż dioda dla przyzwoitości też mogłaby się tam znaleźć. Napewno nie sterowało to przekaźnikami sterującymi energetyką obiektu, tam raczej rozwiązanie czysto elektromechaniczne. Na oko taki radiator na module powinien spokojnie wytracić minimum 5W. Z6 posiada 10 elementów mocy, Z7 8 elementów skąd ta...
Przeniosę to przerwanie i tablice do plików .c. Ale wtedy w pliku głównym .c mam includować plik przerwania .c? Myślałem, że tam inkluduje się tylko pliki .h Nie musisz include'ować pliku .c, a nawet nie powinieneś. W Makefile dopisz go tylko do plików źródłowych (SRC = $(TARGET).c przerwanie.c inny_plik.c itd.) a linker odwali resztę roboty. Zostało...
(at)dasej Proponuję abyś poczytał wpierw co to jest tzw storage duration. W C masz 3 rodzaje: static auto i allocated. Static to zmienne globalne oraz zmienne w funkcjach z atrybutem `static` Auto to zmienne (a raczej generalnie obiekty) zadeklarowane w funkcjach Allocated - utworzone przez funkcje dynamicznej alokacji pamęci (w standardzie C jest...
-Os to nie jedyna optymalizacja. Przypuszczam, że różnice wynikają z dużej ilości nieużywanych funkcji lub danych. AS kompiluje z opcjami umożliwjącymi ich automatyczne usunięcie, PN prawdopodobnie nie. Zagadka w miarę prosta do rozwiązania, wystarczy wygenerować listę obiektów z ich rozmiarami z pliku elf i porównać.
Witam, a mówiłem żeby się nie męczyć z WinAPI :P No ale jak ktoś lubi hardcore i nieprzespane noce :) Rozwiązanie z tablicą to nie jest dobry pomysł. Kiedy zamkniesz jedno z otwartych okien, w tablicy zostanie HWND nieistniejącego okna. U Ciebie nie działa bo nawet jeśli funkcja CreateWindow wywoła się prawidłowo to zwiększasz li i ShowWindow dostaje...
mam tablicę o nazwie Image: Array http://obrazki.elektroda.net/69_12125836...
Przy Debugowaniu otrzymuję komunikat: "Unhandled exception in ServoController.exe (NTDLL.DLL): 0xC0000005: Access Violation." Ktoś się spotkał z takim czymś kiedyś? Będe wdzięczny za pomoc. Tak zapewne każdy się spotkał a to efekt odwoływania się do pamięci która do ciebie nie należy. Najczęściej przyczyną jest odwoływanie się do elementów tablicy...
Witam, Uzupełniam braki w niektórych zagadnieniach związanych z C++ i akurat wziąłem na tapetę wskaźniki do funkcji. Mam problem ze składnią potrzebną do stworzenia dynamicznej tablicy wskaźników na funkcje. Bo tak: Umiem zadeklarować i użyć wskaźnika do funkcji. Umiem zrobić też tablicę wskaźników do funkcji, tyle że jedynie statyczną a nie dynamiczną....
dynamiczny tablica obiekt tablica wskaźnik tablica wskaźnik renault
renault laguna ekran sterownik astra delco enkodery myszki
kosiarka stiga kuchenka indukcyjna
Zamiana tranzystora BD135 10gr na 16gr w WS432 Diody SMD 4264H - schemat i zastosowanie