- Xiaomi 15 - kicsi telefon nagy energiával
- Xiaomi 15T Pro - a téma nincs lezárva
- Huawei Watch GT 6 és GT 6 Pro duplateszt
- One mobilszolgáltatások
- Google Pixel topik
- „Új mérce az Android világában” – Kezünkben a Vivo X300 és X300 Pro
- iPhone topik
- Redmi Note 13 Pro+ - a fejlődés íve
- Akciófigyelő: kedvezménnyel nyit az Earfun Air Pro 4+
- Motorola Moto G67 Power előzetes
Új hozzászólás Aktív témák
- 
			
			  Domonkos addikt válasz  Hunmugli
							
							
								#3797
							
							üzenetére Hunmugli
							
							
								#3797
							
							üzenetéreHa a leheto legegyszerubben akarnam megcsinalni, akkor valahogy igy tennem: C N. bitjenek beallitasa: C |= (1<<N);Egyetlen bit torlese: C &= ~(1<<N);Egyetlen bit lekerdezese: C & (1<<N);Itt termeszetesen a legkisebb helyiertektol es 0-tol szamozodnak a bitek. Hogy hogy ontod osztalyba, mar rad bizom.  
 Meg par ellenorzessel is elferne. 
 Ha jol optimalizal a fordito, akkor ez a legtobb architecturan egy-egy utasitas lesz a binarisban.
- 
			
			  Hunmugli aktív tag Sziasztok! Egyik ismerősöm ma ezt kérdezte tőlem: 
 "helpstruct struktura {...};
 struktura** s = ...;Ezt hogy kell szebben irni??? ` (*s)->data`
 Nagyon rondaaaaa"Én még mindig kezdő stádiumban vagyok, úgyhogy inkább csak poénból kérdezte, de mutatott egy kódot, és tényleg ráférne, hogy szebb legyen. Én szoktam tőle kérdezni  Jöhet bármilyen megoldás, ami "szebb", csak ne veszítsen értékéből a kód [kell mind2 *]. Jöhet bármilyen megoldás, ami "szebb", csak ne veszítsen értékéből a kód [kell mind2 *].És egy saját kérdés: 
 van egy char, ami binárisan mondjuk így néz ki [hogy pontosan melyik, az nem fontos]:char C = 001 000 100Nos, ha van egy int Nbemenő adat, akkor hogy lehetCN-edik bitjét minél egyszerűbben:
 -lekérdezni (módosítás nélkül),
 -biztosan igazzá tenni,
 -biztosan hamissá tenni?Olvasgattam a bitenkénti műveletekről, meg a shift operátorokról, de nem akar működni a dolog  Amúgy sem sikerül elképzelnem 100%, mert a fejemben egy hang ezt mondja: "Baloldalt egy char van, jobboldalt egy bit, ez nem fog menni". Amúgy sem sikerül elképzelnem 100%, mert a fejemben egy hang ezt mondja: "Baloldalt egy char van, jobboldalt egy bit, ez nem fog menni".Cbitjei balról jobbra vannak számozva, 0tól kezdődően 7ig. Function szerűen kéne, plbool lekerdez (int N) {...}
 Szakirodalommal nem vagyok kisegítve, ezért kérdeztem. Most egy class-t írok gyakorlásképp, ami kb annyit tudna, mint egy bool tömb, csak mivel ebben bitenként lennének az értékek, 8x olyan kevés helyet foglalna.
- 
			
			  Lejszi senior tag Sziasztok! Csak kost kezdek ismerkedni a c++ nyelvvel. Miert nem akar mukodni a progi? 
 Tudna vki segiteni? Mit rontottal el? Koszonom.#include "stdafx.h"
 #include <iostream>
 #include <conio.h>
 using namespace std;
 int main()
 {
 int a, b;
 cout << "Please enter the first number: ";
 cin >> a;
 cout << "Please enter the second number: ";
 cin >> b;
 cout << "sum is " << a + b << "\n";
 int n, i, flag = 0;
 cout << "Enter a positive integer: ";
 cin >> n;
 for (i = 2; i <= n / 2; ++i)
 {
 if (n&i == 0)
 {
 flag = 1;
 break;
 }
 }
 if (flag == 0)
 cout << "This is a prime numer";
 else
 cout << "This is not a prime number";
 _getch();
 return 0;
 }update: 
 megvan! % kellett volna hasznalnom a & helyett.
 Silly me 
- 
			
			  mezis félisten Üdv.! Tanulom a C++-t és az U++ fejlesztő rendszert. Az elérhető fontkészlet demo programja rendben működik az eredeti utasítás sorral: fontlist.Add(i, Font::GetFaceName(i)); Font.cpp 
 Fontkeszlet: 1 file(s) built in (0:04.46), 4461 msecs / file, duration = 4477 msecs, parallelization 0%OK. (0:04.49) Kicseréltem a használhatóbbnak gondolt utasításra: fontlist.Add(i, Font::GetFaceNameStd(i)); Az alábbi hiba üzenet a fordítás eredménye: 
 error: no matching function for call to 'Upp: ont::GetFaceNameStd(int&)' ont::GetFaceNameStd(int&)'A Help szerint ennek működnie kellene: 
 "String GetFaceName() const
 Returns the face-name text for current instance.String GetFaceNameStd() const 
 Similar to GetFaceName, but returns generic names "serif", "sansserif", "monospace", "STDFONT" for corresponding faces, instead of real names."Valamit elrontottam ? 
- 
			
			  nji aktív tag esetleg kidolgozott feladatokat/forráskódokat tudtok linkelni? 
- 
			
			  nji aktív tag Köszönöm a két utolsó tippet. Elkezdem az udemy tréninget, aztán ha valahol elakadok, megnézem a BME jegyzetben. 
- 
			
			  EQMontoya veterán 
- 
			
			  nji aktív tag válasz  EQMontoya
							
							
								#3785
							
							üzenetére EQMontoya
							
							
								#3785
							
							üzenetéreNekiállok, ez nem kérdés, de hogyan lehet egységnyi idő alatt legjobban felkészülni: 
 - a könyvet olvasva,
 - youtube-ot nézve,
 - tutorialt olvasva,
 - telefonon a SoloLearn programmal?
 Napi nyolc órát dolgozom, hétvégén házimunka, tehát max. napi egy órám van rá esténként.
 Ezért szerettem volna megtudni a gyakorlott szakemberektől, hogy mi a legjobb módszer.
- 
			
			  nji aktív tag sziasztok, 
 április végére kellene felsőfokú oktatási intézménybe egy kettes szintet összehozni. Nagyjából ez az anyag: 
 - Ciklusok, függvények
 -Referenciák, makrók
 - Struktúrák, paraméterátadás
 - tömbök
 - Default függvényparaméter, rekurzió
 - Névtér, header
 - Osztályok (struktúrák)
 - Operátor túlterhelés
 - Destruktor, copy konstruktor, copy assignment
 - Sablon, öröklés
 - virtuális függvények,
 - kivételkezelés.Egyelőre csak a ciklusok, függvények és tömbök mennek, az előző félévi C tanulmányokból. 
 A kérdésem:
 hogyan készüljek fel célzottan egy kettesre ? (40 % a kettes, öt programot kell írni, abból kettő működjön)Néztem youtube videot, tutorialspointot is olvasom, az 1300 oldalas Stroustrup könyvet is letöltöttem, de ezt két hónap alatt lehetetlen munka mellett átnézni. 
 Kellene valami jó stratégia, ami lényegre törő és át lehet menni a vizsgán. Utána majd úgyis lesz idő gyakorolni, ha valaha is ilyen állásom lesz, de az még messze van.Ezt a fórumot érdemes visszaolvasni? 
 Köszi a tippeket.
- 
			
			  dobragab addikt válasz  Hunmugli
							
							
								#3779
							
							üzenetére Hunmugli
							
							
								#3779
							
							üzenetéreC++ szabvány nem engedi meg, hogy ne legyen megadva a visszatérési érték. GCC 4.9 ezek szerint sz*rik rá, ahogy sok minden másra is. [link] Nem definiált függvény csak akkor fordítási (linkelési) hiba, ha meg is hívod. Ezt gyakran kihasználjuk, pl. template metaprogramozásnál. int func(int);
 double func(char);
 using T = decltype(func(1)); // T == int(#3777) EQMontoya Jogos, erre nem gondoltam. Azt hittem, pointerként kéne kiírnia ( %plenne printf-nél), mert ugye függvénypointer.Ezek szerint a kiírásra nincs függvénypointer-overload (persze, C++98-ban nem lehetne megcsinálni, utána meg kompatibilitási okok miatt nem vezetnék be soha). Fptr->void*konverzió pedig adatszegmens - utasításszegmens okok miatt nem implicit. Pedigvoid*-os overload van.
- 
			
			  kispx addikt válasz  Hunmugli
							
							
								#3779
							
							üzenetére Hunmugli
							
							
								#3779
							
							üzenetérekiir: 
 A függvények alapértelmezett visszatérési típusa int. Emiatt nincs kiírva az int és tér vissza int-tel.Amíg nem hívod meg a beallit() metódust, addig nem mindegyik fordítónál hiba. Amit megakarod hívni, undefined reference to asd::beallit hibaüzenetet kapsz. double a = 4.3 
 Default member initializer
- 
			
			  Hunmugli aktív tag Az a kérdésem van, hogy az alábbi kód miért fordul le gcc 4.9-cel?: #include <iostream>
 using namespace std;
 class asd {
 public:
 int i = 3;
 beallit (); //ez nincs is kifejtve
 kiir(); //itt sincs tipusmeghatarozas
 private:
 double a = 4.3; //ez szabalyos?
 };
 int main()
 {
 asd asdobj;
 cout << asdobj.i << endl;
 cout << asdobj.kiir();
 return 0;
 }
 asd::kiir () {
 cout << this->a << endl;
 return this->a; //es a return int-et ad vissza
 }Tudom, hogy hibás, stb, de az én gépemen lefordul (cpp.sh-n nem). Ez annak tudható be, hogy a gcc 4.9.2 nem elég friss? 
- 
			
			
- 
			
			  EQMontoya veterán válasz  dobragab
							
							
								#3775
							
							üzenetére dobragab
							
							
								#3775
							
							üzenetéreaz viszont bool-ra (nem tudom pontosan, miért). 4.12 Boolean conversions 1 An rvalue of arithmetic, enumeration, pointer, or pointer to member type can be converted to an rvalue of type bool. Szóval azért, mert nincs más konverzió, amit csinálhatna vele. Pointer -> int nincs impliciten. Igen, szerintem is béna. 
- 
			
			  Hunmugli aktív tag válasz  bandi0000
							
							
								#3774
							
							üzenetére bandi0000
							
							
								#3774
							
							üzenetéreEzt elvileg tudom mi  Mondom, félrement a // ez mi? --> a mainhez akartam írni 
 ez egyébként annyit tud, hogy asd értékét beállítja arra, ami a zárójelben van. Ez főleg akkor jó, ha asd egy constans, mert bármilyen más módszerrel hibát dobna (a constans az konstans ) )dobragab: köszönöm a részletes magyarázatot  
- 
			
			  dobragab addikt válasz  Hunmugli
							
							
								#3771
							
							üzenetére Hunmugli
							
							
								#3771
							
							üzenetéreHa megnézed a fordító hibaüzenetét, közelebb kerülsz a megoldáshoz. int x(int(int(int(int(int(int(int(int))))))));Ez a sor nem egy változó, hanem egy függvény deklarációja. int x(int (*)(int (*)(int (*)(int (*)(int (*)(int (*)(int (*)(int))))))))Tehát egy inttel visszatérő függvény, [ami paraméterként egy inttel visszatérő függénypointert vesz át]...., ami paraméterként egy intet vesz át. Utána, a kiírásnál a függvény automatikusan a címére konvertálódik (ami egy függvényre mutató pointer), az viszont bool-ra (nem tudom pontosan, miért). Ezért ír ki 1-et. Függvénydeklarációnak viszont nem adhatsz értéket. Nem véletlenül szokták mondani a C / C++ deklarációkra, hogy syntax only a compiler could love… 
- 
			
			  bandi0000 nagyúr válasz  Hunmugli
							
							
								#3773
							
							üzenetére Hunmugli
							
							
								#3773
							
							üzenetére= az mindig értékadás public: 
 valami (int a) : asd (a) { } //szoval ez mi?ezt én sem tudom  vagyis ha jól gondolom akkor lesz egy publikus változód a valami, ami kapna? egy intes értéket, bár azzal meg nem csinálsz semmit, szóval passz vagyis ha jól gondolom akkor lesz egy publikus változód a valami, ami kapna? egy intes értéket, bár azzal meg nem csinálsz semmit, szóval passzmit szeretnél csinálni? mert azzal többre mennénk  
- 
			
			
- 
			
			  Hunmugli aktív tag válasz  bandi0000
							
							
								#3769
							
							üzenetére bandi0000
							
							
								#3769
							
							üzenetéreNyugi, az alapokkal [...] tisztában vagyok. Hamarosan Sololearn certifikációt is szerzek  [mellesleg csak ajánlani tudom, remek app, és böngészőben is fut.] Az értékadást nem y-ra értettem, hanem x-re. [mellesleg csak ajánlani tudom, remek app, és böngészőben is fut.] Az értékadást nem y-ra értettem, hanem x-re.Szóval hogy adok ennek értéket?: int x(int(int));
 //értékadás
 cout << x << endl; //x ne legyen 1dabadab: így már más. És akkor ez mi: értékadás vagy constructor? #include <iostreams>
 using namepsace std;
 class valami {
 private: int asd; //igen, asd
 public:
 valami (int a) : asd (a) { } //szoval ez mi?
 };
 int main () {
 valami mas = 2;
 }Remélem jól írtam  
- 
			
			
- 
			
			  Hunmugli aktív tag válasz  bandi0000
							
							
								#3767
							
							üzenetére bandi0000
							
							
								#3767
							
							üzenetéreC:  , asszem c++14-gyel. (gnu gcc) , asszem c++14-gyel. (gnu gcc)Vagy cpp.sh-val - bár megnézve a figyelmeztetést, szerintem pointereket hoz létre. De értéket nem tudok neki adni  Van ez a módszer: int y(15);Azt akartam kipróbálni, hogy van-e ilyen: int y(15);
 y(2*y);Mert az első esetben a () értékadás, hát a másodikban miért ne működne?  (nem működik, y is not a function) (nem működik, y is not a function)Aztán valahogy az előző kommenben lévő kódot kreáltam  
- 
			
			  Hunmugli aktív tag Helló! Viszonylag új vagyok c++ teréna programozás világában. Az a kérdésem van, hogy a következő kód mit csinál, miért fordul le, és miért 1 a kimenet:#include <iostream>
 using namespace std;
 int main ()
 {
 int x(int(int(int(int(int(int(int(int))))))));
 cout << x << endl;
 return 0;
 }
- 
			
			
- 
			
			  semij9699 csendes újonc Sziasztok! 
 c# ba hogy oldom meg azt, hogy van két buttonom és ha az egyikre kattintok akkor a másik enabled tulajdonsága az ellentétére változik? és akárhányszor kattintsak(ez lenne lényegibb)
 Kösz előre is
- 
			
			  dobragab addikt válasz  dobragab
							
							
								#3688
							
							üzenetére dobragab
							
							
								#3688
							
							üzenetéreC++-ról megint tanultam újat. Rosszul tudtam eddig, megtaláltam a szabványban, hogy a throw()és anoexceptkompatibilis.Mindezt annak nyomán találtam meg, hogy a fordító által generált move ctor vajon noexcept(auto)-e. Igen, az, sőt a throw deklarációkat is helyesen merge-eli. Bár ez a része tökmindegy 
- 
			
			  mezis félisten Üdv.! A Dev-C++ 5.11 alatt szeretném működésre bírni az alábbi programocskát: #include<iostream> 
 #include<Windows.h>
 #include<MMSystem.h>
 using namespace std;int main() 
 {
 PlaySound(TEXT("canary.wav"),NULL,SND_SYNC);
 system("pause");
 return(0);} A fordító a következő hibaüzenetet küldi: Makefile.win 25. sor: A megadott nevet (winmm) a rendszer nem ismeri fel belső vagy külső parancsként futtathatóként vagy kötegfileként. A Makefile 24,25.sora: 
 $(BIN): $(OBJ)
 $(CPP) $(LINKOBJ) -o $(BIN) $(LIBS)Mit kell tennem, hogy megszűnjön ez a hiányérzete ?  (Google a winmm-re egy winmm.dll-t file hozzott csupán de azt is valamilyen vírussal kapcsolatosan.) 
- 
			
			  Hannibhál őstag válasz  ToMmY_hun
							
							
								#3750
							
							üzenetére ToMmY_hun
							
							
								#3750
							
							üzenetéreAzt a stroupasos könyvet kezdtem el én is de tényleg elég nehéz, viszont ha nekem úgy mond elég a 2d meg alap számítások(excelbe már csináltam hozzá pár dolgot, hogy kicsit automatizáljam) igazából a 2d-s grafikus felület hiányzik(térkép, kezelőfelület) a játék pedig a civilizationra hasonlít kicsit 
- 
			
			  ToMmY_hun senior tag válasz  Hannibhál
							
							
								#3748
							
							üzenetére Hannibhál
							
							
								#3748
							
							üzenetéreAmennyiben nem kell nagy számítási teljesítmény (2D tábla játékhoz nem fog kelleni) akkor felesleges C++ nyelvben elkészíteni. Én ezt vagy szkript nyelvben írnám, vagy mondjuk Java-ban. Biztos vagyok benne, hogy mindkettőben gyorsabb lenne a fejlesztés üteme, főleg ha most tanulsz programozni. kispx +1. Gyorsabb benne dolgozni és egy kezdőnek is könnyebben felfogható. Szerintem ez nem vallási háború, pusztán rideg tények. 
- 
			
			  kispx addikt válasz  Hannibhál
							
							
								#3748
							
							üzenetére Hannibhál
							
							
								#3748
							
							üzenetéreAz eredeti kérdésedre a válaszolva: Stroustrup-nak van egy kezdőknek szánt könyve. Viszont lehet, hogy jobban járnál egy másik nyelvvel. Pl.: C#, vagy Python 
 C# programozás lépésről lépésre
 Nem akarok vallási háborút kiindítani, hogy ezt a két nyelvet ajánlottam, de általában a kezdők gyorsabban tudnak ezekkel haladni, mint a C++-szal.
- 
			
			  Hannibhál őstag válasz  ToMmY_hun
							
							
								#3747
							
							üzenetére ToMmY_hun
							
							
								#3747
							
							üzenetérevan egy nagyon régi álmom miszerint az általam kreált stratégiai játékot csinálnám meg pc-re(eddig papíron ment). sima kis négyzethálós game lenne amit eddig pl papíron is lehetett csak mindent nekem számolni, meg rajzolni....ai nem lenne s egyszer valamelyik ismerősöm ezt javasolta. de ha van jobb alternatíva akkor hallgatom  
- 
			
			  Hannibhál őstag Sziasztok! AZt szeretném kérdezni, hogy most kezdenék megtanulni c++-ul és hogy van e valami jó könyv kezdőknek(régen nagyon alapszinten tanultam pascalt, meg egyetemen kicsit vba-t excelbe) és hogy milyen program lenne ajánlott c++-hoz(pl codeblocks stb). Válaszaitokat előre is köszi  
- 
			
			  sko csendes tag válasz  semij9699
							
							
								#3740
							
							üzenetére semij9699
							
							
								#3740
							
							üzenetéreHa a feladatleírás tényleg csak annyi, hogy "Készítsen alkalmazást gőzgép modellezésre! Tárolja el fájljba az aktuális dátumot, időt, fordulatszámot!", akkor a bemeneted lehet a fűtés mértéke, ami némi késleltetéssel kiváltja a fordulatszám változását. Alapállapotban melegítés nincs, vízhőfok a környezetével megegyező, gőznyomás nincs, fordulatszám 0. A legegyszerűbb, ha a gép aktuális állapotát kizárólag a fordulatszámmal írod le. 
 Ha a fűtés intenzitása nő, később a fordulatszám is emelkedni kezd, amíg el nem éri az adott fűtési fokhoz tartozó fordulatszámot. Ha a fordulatszám elérte a maximumot, akkor további melegítés hatására már nem nő (tegyük fel, kinyit egy biztonsági szelep). Ha a fűtés alábbhagy, a fordulatszám is csökkenni fog.
 Nehéz így kitalálni, de a megoldás állhat abból, hogy van valamilyen mód a fűtés fokának változtatására a form-on, ugyanott megjelenik az éppen aktuális fordulatszám, illetve azt kiírod egy fájlba a datetime-mal együtt.
- 
			
			  semij9699 csendes újonc Köszi a válaszod! 
 Hát igazából elég zöldfülű vagyok a területen.
 A kérdésem az lenne nagy körvonalakban ,hogy a 3 adat amiket kér (t, dátum , f) azokat hogyan kellene megadni? Véletlenszerű adatokkal tölti fel? vagy csak simán a textboxba mikor beirnak egy adatot ezt elment?
 A válaszod előre is köszi
- 
			
			  semij9699 csendes újonc [Windows Form Application] 
 Sziasztok !Valaki tudna egy kis segítséget adni az alábbi feladatban? 
 "Készítsen alkalmazást gőzgép modellezésre.Tárolja el fájljba az aktuális dátumot és idő és fordulatszámot"Köszönöm előre is  
- 
			
			  vimes senior tag Na, most átnéztem a kódot, és megtaláltam a szegmentálási hiba okát is: for(int j = 0; i < oszlopok; j++)
 gj volt vagy fél óra mire ezt a pitiáner hibát észrevettem.... volt vagy fél óra mire ezt a pitiáner hibát észrevettem....Közben a gyakvezéremtől is kaptam választ, amiből megértettem, hogy mit rontottam el, és hogy miért is nem értettem a fordító hibaüzenetét, most már (azt hiszem  ) világos a szitu, úgyhogy úgy néz ki megoldódott a problémám ) világos a szitu, úgyhogy úgy néz ki megoldódott a problémám 
- 
			
			  vimes senior tag Na így már lefordult, viszont el is szállt szegmentálási hibával  az első mátrix első sorát jól kiírta, aztán kb. beterítette a konzolt a memóriaszemét, meg a sok 0 az első mátrix első sorát jól kiírta, aztán kb. beterítette a konzolt a memóriaszemét, meg a sok 0 De mivel már a mátrix elemeinek kiíratásánál elszállt, legalább az sanszos, hogy a konstruktorban csesztem el valamit. Majd holnap (ma) délelőtt átnézem alaposan a kódot. De mivel már a mátrix elemeinek kiíratásánál elszállt, legalább az sanszos, hogy a konstruktorban csesztem el valamit. Majd holnap (ma) délelőtt átnézem alaposan a kódot.Hát igen, van egy kis kilométer-hiányom C++-ban  az látszik. Kb. 2-3 órát programozgattam szemeszter kezdete óta, elvették az időm a többi tárgyak az látszik. Kb. 2-3 órát programozgattam szemeszter kezdete óta, elvették az időm a többi tárgyak "A C-s tömbök azért elég rémisztően néznek ki, meg a félig magyar metódus- és változónevek is."  Nem vagyok nagy operator overloading-császár, de gyanús hogy abban sem szoktak vezérlési szerkezeteket használni Nem vagyok nagy operator overloading-császár, de gyanús hogy abban sem szoktak vezérlési szerkezeteket használni Nyilván nem a legjobb a kód stílusa, most csak az lenne a lényeg, hogy működő legyen a kód, leadhassam, aztán készülhessek a C++ gyakvizsgára. Akkor már lesz is időm leülni rendesen programozni... Nyilván nem a legjobb a kód stílusa, most csak az lenne a lényeg, hogy működő legyen a kód, leadhassam, aztán készülhessek a C++ gyakvizsgára. Akkor már lesz is időm leülni rendesen programozni...Ja, és köszönöm szépen mindkettőtöknek a segítséget! 
- 
			
			  vimes senior tag Sziasztok, Alább látható az általam írt forráskód (a program két mátrixot ad össze, von ki, szoroz össze). A problémám, hogy a main függvényben, mikor az operator overloading-ot szeretném használni, arra a három sorra error-t kapok a fordítótól, de nem értem miért... 
 (Szerintem elég az operator overloading-os részt elolvasni a kódból, de mivel én nem tudom pontosan hol a hiba, ez nem 100%)#include <iostream>
 #include <iomanip>
 using namespace std;
 class Matrix{
 private:
 unsigned int sorok;
 unsigned int oszlopok;
 double** elemek;
 
 public:
 Matrix(unsigned int n, unsigned int m, double szam) : sorok(n), oszlopok(m){
 elemek = new double*[n];
 for(int i = 0; i < n; i++)
 {
 elemek[i] = new double[m];
 }
 for(int i = 0; i < n; i++)
 {
 for(int j = 0; j < m; j++)
 {
 elemek[i][j] = szam;
 }
 }
 }
 
 Matrix(unsigned int n, unsigned int m) : sorok(n), oszlopok(m){
 elemek = new double*[n];
 for(int i = 0; i < n; i++)
 {
 elemek[i] = new double[m];
 }
 for(int i = 0; i < n; i++)
 {
 for(int j = 0; j < m; j++)
 {
 cout << (i+1) << ". sor " << (j+1) << ". oszlop: ";
 double ertek;
 cin >> ertek;
 elemek[i][j] = ertek;
 }
 }
 cout << endl;
 }
 
 Matrix(Matrix &masik){
 sorok = masik.sorok;
 oszlopok = masik.oszlopok;
 elemek = new double*[masik.sorok];
 for(int i = 0; i < sorok; i++)
 {
 elemek[i] = new double[oszlopok];
 }
 for(int i = 0; i < sorok; i++)
 {
 for(int j = 0; j < oszlopok; j++)
 {
 elemek[i][j] = masik.elemek[i][j];
 }
 }
 }
 
 ~Matrix(){
 for(int i = 0; i < sorok; i++){
 delete[] elemek[i];
 }
 delete[] elemek;
 }
 
 unsigned int getSorok() const {return sorok;}
 
 unsigned int getOszlopok() const {return oszlopok;}
 
 double getElem(const unsigned int n, const unsigned int m) const {return elemek[n-1][m-1];}
 
 void setElem(const unsigned int n, const unsigned int m, const double szam){
 cout << "Mátrix(" << n << "x" << m << ") eleme: " << elemek[n-1][m-1] << endl;
 elemek[n-1][m-1] = szam;
 cout << "(" << n << "x" << m << ") új értéke: " << elemek[n-1][m-1] << endl;
 }
 
 void dispMatrix(){
 for(int i = 0; i < sorok; i++)
 {
 for(int j = 0; i < oszlopok; j++)
 {
 cout << left << setw(6) << elemek[i][j] << " ";
 }
 cout << endl;
 }
 }
 
 Matrix operator+(const Matrix &B){
 Matrix C(this->sorok, this->oszlopok, 0);
 if((this->sorok == B.sorok) && (this->oszlopok == B.oszlopok)){
 for(int i = 0; i < this->sorok; i++){
 for(int j = 0; j < this->oszlopok; j++){
 C.elemek[i][j] = this->elemek[i][j] + B.elemek[i][j];
 }
 }
 return C;
 }
 else{
 cout << "A mátrixokon a '+' művelet nincs értelmezeve!" << endl;
 return C;
 }
 }
 
 Matrix operator-(const Matrix &B){
 Matrix C(this->sorok, this->oszlopok, 0);
 if((this->sorok == B.sorok) && (this->oszlopok == B.oszlopok)){
 for(int i = 0; i < this->sorok; i++){
 for(int j = 0; j < this->oszlopok; j++){
 C.elemek[i][j] = this->elemek[i][j] - B.elemek[i][j];
 }
 }
 return C;
 }
 else{
 cout << "A mátrixokon a '-' művelet nincs értelmezeve!" << endl;
 return C;
 }
 }
 
 Matrix operator*(const Matrix &B){
 Matrix C(this->sorok, B.oszlopok, 0);
 if(this->oszlopok == B.sorok){
 for(int i = 0; i < this->sorok; i++){
 for(int j = 0; j < B.oszlopok; j++){
 int szum = 0;
 for(int k = 0; k < this->oszlopok; k++){ // lehetne akár k < B.getSorok() is, hiszen ez a feltétele a mátrixszorzásnak...
 szum += this->elemek[i][k] * B.elemek[k][j];
 }
 C.elemek[i][j] = szum;
 }
 }
 return C;
 }
 else{
 cout << "A mátrixokon a '*' művelet nincs értelmezeve!" << endl;
 return C;
 }
 }
 };
 int main(){
 //konstruktor kipróbálása
 Matrix A(3,3);
 Matrix B(3,3);
 
 //operator overloading kipróbálása
 Matrix C = A + B; //hibás elvileg...
 Matrix D = A * B; //hibás elvileg...
 Matrix E = A - B; //hibás elvileg...
 
 //dispMatrix(), getSorok(), getOszlopok()...
 cout << "C mátrix: A + B" << endl;
 C.dispMatrix();
 cout << "C mátrix dimenziója: " << C.getSorok() << "x" << C.getOszlopok() << "." << endl;
 
 cout << "D mátrix: A * B" << endl;
 D.dispMatrix();
 cout << "D mátrix dimenziója: " << D.getSorok() << "x" << D.getOszlopok() << "." << endl;
 
 cout << "E mátrix: A - B" << endl;
 E.dispMatrix();
 cout << "E mátrix dimenziója: " << E.getSorok() << "x" << E.getOszlopok() << "." << endl;
 
 //getElem(), setElem()...
 //válasszuk ki 'A' mártix egy tetszőleges elemét, és módosítsuk egy általunk választott értékre...
 int n, m;
 double v;
 cout << "'A' melyik elemét?" << endl;
 cout << "Oszlop: ";
 cin >> n;
 cout << "Sor: ";
 cin >> m;
 cout << "Erre az értékre: ";
 cin >> v;
 A.setElem(n, m, v);
 //kérjük le a módosított elem értékét még egyszer...
 cout << A.getElem(n, m) << endl;
 
 return 0;
 }Ezt kapom a g++ -tól: matrix2.cpp: In function ‘int main()’:
 matrix2.cpp:154:15: error: invalid initialization of non-const reference of type ‘Matrix&’ from an rvalue of type ‘Matrix’
 Matrix C = A + B;
 ^
 matrix2.cpp:46:3: note: initializing argument 1 of ‘Matrix::Matrix(Matrix&)’
 Matrix(Matrix &masik){
 ^
 matrix2.cpp:155:15: error: invalid initialization of non-const reference of type ‘Matrix&’ from an rvalue of type ‘Matrix’
 Matrix D = A * B;
 ^
 matrix2.cpp:46:3: note: initializing argument 1 of ‘Matrix::Matrix(Matrix&)’
 Matrix(Matrix &masik){
 ^
 matrix2.cpp:156:15: error: invalid initialization of non-const reference of type ‘Matrix&’ from an rvalue of type ‘Matrix’
 Matrix E = A - B;
 ^
 matrix2.cpp:46:3: note: initializing argument 1 of ‘Matrix::Matrix(Matrix&)’
 Matrix(Matrix &masik){
 ^Egyszerűen nem látom, hogy hol van a hiba a kódban, ami a fenti errort okozza...    Előre is köszönöm a segítséget! 
- 
			
			  KREE csendes tag válasz  dobragab
							
							
								#3727
							
							üzenetére dobragab
							
							
								#3727
							
							üzenetéreHát, sajnos béna vagyok hozzá... :S 
 Nem tudná esetleg megoldani nekem valaki? Privben átküldném a forráskódot.
 150 soros a progi, de 80%-a csak if-es feltétel meg kommentek, viszont grafikus módban íródott Turbo C++-ban. Sztem aki ért vmi Visual studio féle cucchoz annak 5 perc... Pár napon belül le kellene adni a szakdogámat...
- 
			
			  KREE csendes tag Yo, kérdésem az lenne, hogy ismer valaki olyan progit, ami átfordítja nekem a Turbo C++-ban megírt kódomat valamilyen windows 7 alatt is használható kódra? (A problémám abból fakad, hogy a szakdolgozatomhoz írtam egy progit Turbo c++-ban, amiből a lefordított .exe file-t nem tudom futtatni win7-től felfelé. Csak most vettem észre, hogy gond van, mert a gép amin írtam win xp-s, ott pedig gond nélkül mennek ezek a DOS-os progik is). Sajnos se időm se tudásom nincs ahhoz, hogy átírjam, örülök hogy ennyit sikerült összehozni (kb 100 soros progiról van szó, grafikus megjelenítéssel). Gondolom az ilyen getch() és hasonló dolgokat kellene kicserélgetni... Létezik erre valami konverter szerűség vagy muszáj leszek máshogyan megoldani? (a dosbox telepítése nem megoldás, mivel szakdolgozatról van szó) Köszönöm! 
- 
			
			  bandi0000 nagyúr ha van 1-2 beszédes szellemű ember, az leírná nekem ide, vagy privátba, hogy a munkája során, ami talán programozás, ott mennyire és milyen szinten kell a matek? programtervezőnek is kellene? mert egyedül ahol gondolom kell, az pl játékoknál, ott is a fizikánál... mert nem igazán tudom, hogy pl egy C++-al mit lehet dolgozni, mit kell vele csinálni 
- 
			
			  sko csendes tag válasz  dobragab
							
							
								#3718
							
							üzenetére dobragab
							
							
								#3718
							
							üzenetéreSzívesen! Nem ismerem a feladat részleteit, de a jó megoldás valószínűleg pont, kör, szakasz, stb. osztályokból állhat össze. A kör/szakasz képes lesz legalább az előre ismert pontjait tartalmazni (középpont, végpontok), esetleg adott pillanatban még ismeretleneket kiszámolni. Egy objektum másiktól való távolsága pedig a pontokon keresztül kerül meghatározásra. Ha a feladatleírásban olyan jól behatárolható objektumok vannak, mint pont/kör/szakasz, akkor a programban is hasznos lehet leképezni azokat. A program törzse ezeken az objektumokon dolgozik, a háttérmunkát pedig az objektumokhoz rendelt "képességek" végzik el. Jó kódolást! 
- 
			
			  dobragab addikt A C++ programozás másik alaptulajdonsága, hogy az operátorokat úgy overload-old, hogy ne legyen kérdéses, ne kelljen rajta gondolkodni, mit is csinál. Ha két pontot kivonsz egymásból, akkor matematikailag vektort kapsz. Ennek a vektornak a hosszát nem kellene, hogy az operator- kiszámítsa, az a length feladata. Két pont különbsége ugyanis nem egy float. OOP-ban pedig minden tagfv. egyszerre egy dolgot csinál, nem kettőt (különbség + hossz), operator overloadinggal együtt különösen átverős. Pontosan az ilyen operátorok miatt mondják a jávások, hogy az operator overloading olvashatatlan kódot eredményez. 
- 
			
			  sko csendes tag KREE, a C++-ban (OOP-ban) való programozás egyik alaptulajdonsága, hogy nem jó a később majd megszépítjük módszer, már az alapokat is jól kell lerakni. A te feladatod központi problémája két pont távolságának kiszámítása. Először ezt kell C++-ban leprogramozni. Íme itt egy lehetséges implementáció. Remélem minden tiszta benne, ha nem kérdezz nyugodtan! Ha tiszta, akkor innen kell továbblépni a pontok konténerekbe tárolásával és távolságuk kiszámításával. #include <iostream>
 #include <cmath>
 using namespace std;
 class Point
 //If you need to calculate the distances of points, always start with creating a point object type.
 {
 int x = 0;
 int y = 0;
 public:
 Point(): x(0), y(0) {}
 Point(int X, int Y): x(X), y(Y) {}
 float operator - (const Point&);
 //Overloaded minus operator to calculate the distance of two points.
 //This will enormously simplify your work later.
 };
 float Point::operator - (const Point& other)
 {
 int X = x - other.x;
 int Y = y - other.y;
 //No abs() necessary, because we will square the coordinates anyway.
 float distance = sqrt(X*X + Y*Y);
 //Could be double, long double, whatever you like.
 return distance;
 //There is no real need for this variable, you could return the result of sqrt() directly. Whatever you like.
 }
 int main()
 {
 Point middlepoint(8,-6);
 Point endpoint(-5,10);
 float dist = middlepoint - endpoint;
 //Calculate the distance of these points. It's just that simple.
 cout << dist << endl;
 return 0;
 }
- 
			
			  KREE csendes tag válasz  sztanozs
							
							
								#3714
							
							üzenetére sztanozs
							
							
								#3714
							
							üzenetéreOh, tényleg igazad van a négyzettel kapcsolatban  
 A vektoros dologra gondoltam már, csak előbb nagyon fapados verzióban szeretném életre kelteni, utána meg szépíteni rajta... Már ha lesz rá időm, mert utoljára kb 7-8 éve programoztam (akkor se komolyabban), most meg van 2 hetem megírni egy szakdogát + egy működő progit írni hozzá (meló és 2 gyerek mellett ) )De akkor elvileg működőképes lenne az a feltétel? (csúnyaságától függetlenül?) thx a helpet  
- 
			
			pvt.peter: teljesen igazad van - szemantikailag  Mondjuk körök középpontját biztos nem önálló r1, r2, r3, ... , rvalami, rvalamipluszegy változókba raknám. 
 Inkább egyvector<pair<int,int>>. Azon szépen végig lehet iterálni.Amúgy az |x-rx| < d & |y-ry| < dnem adja vissza, hogy az(x,y) ponttényleg ad sudarú (rx, ry) központú körönbelül van-e. Ezzel azt ellenőrzöd, hogy a(px,py) központú 2d oldalhosszú négyzetbenvan-e...Kicsit személetesen:  
 A piros pont a körben nincs benne, de a feltétel igaz.
- 
			
			  pvt.peter őstag válasz  sztanozs
							
							
								#3711
							
							üzenetére sztanozs
							
							
								#3711
							
							üzenetéreif (10>(x1-r1||x1-r3||x1-r5)>-10 && 10>(y1-r2||y1-r4||y1-r6)>-10)
 Ez biztos nem C++ szintaktika.Szintaktikailag biztos, hogy helyes, szemantikailag viszont nehezen tudnék olyan helyzetet elképzelni ahova ilyen kód kellene  Mit értesz az alatt, hogy x és r különbsége? 
 Talán vmi vektorból szeretne kivonogatni, de amúgy én sem értem.@KREE: kérlek jobban specifikáld a problémádat illetve kérdésedet. Szerkesztés: közben látom megjött pontosítás. 
- 
			
			  KREE csendes tag válasz  sztanozs
							
							
								#3711
							
							üzenetére sztanozs
							
							
								#3711
							
							üzenetéreAnnyi akart lenni a lényeg, hogy egyenes kezdőpontjának a távolságait (x1,y1) kellene vizsgálni körök középpontjaitól (r1,r2) ha 10-en belül van, akkor kapjon v1=1 értéket. Azért raktam 'vagy' || jeleket, mert több kör van, és bármelyiken belülre eshet a vonal kezdőpontja. (remélem érthetően írtam le  ) )
- 
			
			if (10>(x1-r1||x1-r3||x1-r5)>-10 && 10>(y1-r2||y1-r4||y1-r6)>-10)
 Ez biztos nem C++ szintaktika.
 Mit értesz az alatt, hogy x és r különbsége? A kódodban van x1 meg y1 meg r1, r2, r3, r4, r5, és r6...Talán így: if ((min(min(abs(x1-r1), abs(x1-r3)), abs(x1-r5)) < 10) && (min(min(abs(y1-r2), abs(y1-r4)), abs(y1-r6)) < 10))
- 
			
			  KREE csendes tag Sziasztok, előre szólok, hogy noob vagyok, de kellene egy kis help turbo c++ fapados megoldásaimhoz.. azt szeretném elérni, hogyha x és r különbsége 10-nél kisebb ÉS ugyanígy y-r különbsége is, akkor v változó értéke módosuljon az alap 0-ról 1-re x1=r1; y1=r2; v1=0; v2=0; 
 if (10>(x1-r1||x1-r3||x1-r5)>-10 && 10>(y1-r2||y1-r4||y1-r6)>-10) v1=1;másik megoldás: if (abs(x2-(r1||r3||r5)<=10) && abs(y2-(r2||r4||r6)<=10)) v2=1; Egyik esetben se fut le az alábbi v változótól függő if-es parancs. if (v1==1) {x1=rand() % 635; y1=rand() % 475;}; 
 if (v2==1) {x1=rand() % 635; y1=rand() % 475;};Valaki tudna adni egy kis ötletet? :S thx! 
- 
			
			  EQMontoya veterán int stringCompareIgnoreCase(const std::string& str1, const std::string& str2)
 {
 auto CharDiff = [](char c1, char c2)->int
 { if (::tolower(c1) < ::tolower(c2)) return -1;
 if (::tolower(c1) == ::tolower(c2)) return 0;
 return 1; };
 int diff = 0;
 int size = std::min(str1.size(), str2.size());
 for (size_t i = 0; i < size && 0 == diff; ++i)
 {
 diff += CharDiff(str1[i], str2[i]);
 }
 if (0 != diff) return diff;
 if (str2.length() == str1.length()) return 0;
 if (str2.length() > str1.length()) return 1;
 return -1;
 }Műanyagkéssel vagdosom az ereket a karomon keresztbe. 
- 
			
			  EQMontoya veterán bool foo(const std::string& bar)
 {
 return (!A::B(bar)) ? false : true;
 } 
- 
			
			  erer1000 őstag sziasztok nem tudom hogy pontosan hova kéne írnom, ez tűnt a legjobb helynek egy játék (régi) idításánál hibát dob ki Microsoft Visual C++ Runtime Library Runtime Error r6025 pure virtual function call nem tudom mit tegyek hogy megoldódjon. tudtok segíteni? Unreal Tournament 2004ről lenne szó W10-alatt 
 másig itthoni w10-es gépeken semmi hasonló probléma
- 
			
			  bandi0000 nagyúr mutatott a tanár egy ilyen vackot, nem tudom a nevét, talán globális változó? bár sztem az más #define "valami" 6 lényege az lenne, hogy amit ott megadok értéket, bármikor ha módosítom, akkor a program többi részében is módosul, ahol ezt a valamit adtam meg "értéknek" nekem mondjuk átírás után ugyan úgy az előző értékkel dolgozik, valamit én cseszhettem el? 
Új hozzászólás Aktív témák
● ha kódot szúrsz be, használd a PROGRAMKÓD formázási funkciót!
- Milyen notebookot vegyek?
- One otthoni szolgáltatások (TV, internet, telefon)
- LEGO klub
- Okos Otthon / Smart Home
- Filmvilág
- Windows 10
- Miért nem tűnik el soha a kalózkodás?
- Black Friday november 29. / Cyber Monday december 2.
- TCL LCD és LED TV-k
- Xiaomi 15 - kicsi telefon nagy energiával
- További aktív témák...
- AKCIÓ! Asus ROG STRIX Z490-G Gaming WiFi alaplap garanciával hibátlan működéssel
- GYÖNYÖRŰ iPhone 12 mini 256GB Red -1 ÉV GARANCIA -Kártyafüggetlen, MS3627
- Samsung Galaxy A16 / 4/128GB / Kártyafüggetlen / 12Hó Ganacia / BONTATLAN NULL Perces!
- GYÖNYÖRŰ iPhone 13 Pro Max 128GB Graphite -1 ÉV GARANCIA - Kártyafüggetlen, MS3063
- BESZÁMÍTÁS! Acer Predator Helios 300 17 FHD notebook - i7 9750H 32GB DDR4 1TB SSD RTX 2060 6GB W11
Állásajánlatok
Cég: NetGo.hu Kft.
Város: Gödöllő
Cég: Promenade Publishing House Kft.
Város: Budapest

 
								 
							

 
								 
							

 
								
 Amúgy sem sikerül elképzelnem 100%, mert a fejemben egy hang ezt mondja: "Baloldalt egy char van, jobboldalt egy bit, ez nem fog menni".
 Amúgy sem sikerül elképzelnem 100%, mert a fejemben egy hang ezt mondja: "Baloldalt egy char van, jobboldalt egy bit, ez nem fog menni". 
								 
							
 
								 ont::GetFaceNameStd(int&)'
ont::GetFaceNameStd(int&)' 
								 
							 
								 
								 
							 
								 
							 
								 
							 
							 )
 ) 
								 vagyis ha jól gondolom akkor lesz egy publikus változód a valami, ami kapna? egy intes értéket, bár azzal meg nem csinálsz semmit, szóval passz
 vagyis ha jól gondolom akkor lesz egy publikus változód a valami, ami kapna? egy intes értéket, bár azzal meg nem csinálsz semmit, szóval passz 
 
 
								 
							 
							 
								 
							 
								 
							 
							 
								
 
								 
							 
								 
								 
							 
								 
							 
							 
							 
							


 
							 
								

