-
Mobilarena
Új hozzászólás Aktív témák
-
pmonitor
aktív tag
Egy 1szerű feladat. Aki ezt a kódot ki tudja akasztani úgy, hogy nem iterál végig minden elemen, ő kap 1 tízezrest! Ha hölgy, akkor mellé még egy szál virágot is!
-
pmonitor
aktív tag
válasz
Diocles #20290 üzenetére
Csak a dráma megy, a pletyó meg a pszichológia. Egyik sem a szakterületem.
Ebben egyetértünk. És sajnos ebbe én is benne vagyok. Ha megnézed ezt a topikot, akkor látható, hogy ott több szó van a programozásról, mint itt.
De ha én nem lennék, akkor is csak az említett dolgok mennének ebben a topikban is. Csak olyan kérdések vannak, hogy érdemes-e elkezdeni programozni, meg ehhez hasonlók. Amikre lehet rizsázni. Néha van ilyen válasz is. De ez ritka, mint a fehér holló.. -
pmonitor
aktív tag
válasz
F-ECT$ #20285 üzenetére
Nem szeretnék linkelgetni, de egyrészt saját tapasztalat. Kb. 5-6 kérdést tettem fel, azokból 1-re kaptam érdemben választ. Nem egyenlő a zéróval, de azért nem mondhatnám, hogy sok.
De most a C# topic-ban is van egy megválaszolatlan kérdés. Meg nem kellene sokáig nézegetni a topikokat, hogy jó párat találjak. Csak ugye olyant nem lehet linkelgetni, ami negatív tünteti fel a nick-et.
De van, aki "fórumos vérpistikéknek" meg "személyiségzavaros hülyegyerekeknek" nevezi a kérdezőket. Meg le...... az ügyfeleket. Mert ők a nagy szakik! -
pmonitor
aktív tag
válasz
galaxy55 #20283 üzenetére
És bármikor felmehettem a programozókhoz segítséget kérni, ha elakadtam.
Az igazi profi programozók valszeg segítőkészek. De bármelyik fórumban(nem csak itt) a magát szakinak nevezők értékelhető segítséget nem adnak.
Azért a fórumokban a magukat szakinak kikiáltók is névtelenül azt írnak, amit csak akarnak. A való életben biztos, hogy nem ez a helyzet. -
pmonitor
aktív tag
De a kérdező/olvasó csak egyféleképpen dönthet. Vagy igen, vagy nem. Az ilyen kérdéseket szeretitek ti, állítólagos szakik. Ahol lehet rizsázni. Tökéletes téma...
Itt is majdnem sikerült rizsával elmagyaráznod, hogy a string miért is érték típus. Csak a tények makacs dolgok. És nem a rizsára hallgatnak.. -
pmonitor
aktív tag
Mondjuk azért az is érdekes, hogy ti(állítólagos szakik) is mennyire másképp látjátok ugyanazt a dolgot. nevemfel és cucka szerint érdemes(bár mindegyiknek más az indoka). Szted. meg nem. És állítólag mindhárman szakik vagytok. Gyakorlatilag 3-féle véleménnyel. Ebből döntse el a kérdező/olvasó, hogy mit is csináljon.
-
pmonitor
aktív tag
válasz
galaxy55 #20272 üzenetére
Az miért trollkodás, hogy leírom, hogy miket tanulhat meg valaki(pl. az ELTE-n)? Vagy az msdn-en?
De te is azt írtad, hogyMa már inkább rabszolgamunka az IT nagyja
.Én nem vagyok programozó. Csak az általatok írtakat rakom össze. Ez sztem. nem trollkodás.
Egyébként az én véleményem az, hogy kettőtöknek van igaza. A programozás igazából rabszolgamunka, azért mert nagyrészt mások által készített modulokat kell "összerakni"(pl. ~230 megabyte-os ffmpeg). Ehhez sztem. nem kell zseninek lenni.
-
pmonitor
aktív tag
válasz
nevemfel #20270 üzenetére
Sok dolgot kell tudni gyorsan megtanulni, felfogni, és utána alkalmazni.
Pl. C#-ban megtanulhatja, hogy az int referencia típus, mert az object-ből származik.
A string meg érték típus.
De igazából úgy sincs szükség ezekre, mert az egyik profi programozó szerint a programozás az, hogy mások által készített modulokat kell felhasználni... -
pmonitor
aktív tag
Az itt található videót talán érdemes megnézni. Legalábbis annak, akit érdekel.
-
pmonitor
aktív tag
Na nem mintha ennek a topic-nak bármi köze lenne a programozáshoz(2024-06-29 15:28-ig).
-
pmonitor
aktív tag
válasz
galaxy55 #20207 üzenetére
Pl. ez sem reagálás, mi? Az a helyzet, hogy ha pontatlanul fogalmazok, akkor mindig belekötnek. Keressek még példákat, vagy elég ez az egy?
-
pmonitor
aktív tag
válasz
pmonitor #20198 üzenetére
Senki nem kötött bele ebbe? Így lehet átvágni az olyanokat, akik nem tudnak asm-ben debuggolni!
Ugyanis a "típus jellemzői" nem létezik.
Tehát az osztály úgy épül, hogy a referencia a típus azonosítóra mutat. Majd ezt követik az adattagok. A típus azonosító x86 esetén egy int. Tehát referencia típus esetén az első adattag memóriacíme a típus azonosító memóriacíme utáni byte címe(tehát az offset = 4 byte).
Érték típus esetén nincs típus azonosító! Az érték típus memóriacíme megegyezik az első adattag memóriacímével(tehát az offset = 0 byte)! -
pmonitor
aktív tag
válasz
Marky18 #20196 üzenetére
Végülis a memóriakezelés lényegét össze lehet foglalni asm ismeret nélkül is.
Egy osztály úgy épül fel, hogy a referencia a típus azonosítóra mutat(érték típusoknál nem). Ezután jönnek a típus esetleges jellemzői(ha van). Érték típus esetén ilyen sincs. Majd jön maga a típus.
De így kb. csak olyan tudja összedfoglalni, aki előtte asm-ben debuggolt. Vagy valahol olvasta(mint pl. az én leírásomban).
Végül is ez a lényege a memóriában tárolt adattípusoknak. -
pmonitor
aktív tag
válasz
galaxy55 #20194 üzenetére
Nyilván nem C#. De a C# fejlesztőkörnyezetének 1 menüpontjáról beszélünk. Ha vki. ismeri az asm alapokat, akkor meg tudja ismerni a C# memória kezelését. És nem ír olyan blődségeket, hogy pl. 1 int-nek a szülője 1 osztály. Igazából ez jól jönne, amíg az emberke tanul. Hogy tudja, kb. hogy a C# hogy építi fel a memóriát. Sztem. ez csak előnyére válik vkinek.
-
pmonitor
aktív tag
Hogy mi köze van? A VS-ben ha egy metódusba teszel 1 breakpoint-ot, és debug módban futtatod, akkor a debug -> window -> disassembly menüponttal megjelenik az asm kód, vmint a regiszterek/memória tartalmát is meg tudod nézni. Na hogy ebben eligazodjál, ahhoz alap asm ismeret szükséges. Vagy szted. csak dísznek van ott az a "disassembly" menüpont? Mert sztem nem.
A C alapok meg ahhoz szükségesek, hogy pl. az unsafe kódot tudd használni. Szted. ez is dísznek van? De C-ben tudsz natív .dll-t is írni.
Most így made in hirtelen ezek jutottak eszembe. -
pmonitor
aktív tag
-
pmonitor
aktív tag
Én a magyar változatot olvastam.
Egész jó könyv.
-
pmonitor
aktív tag
válasz
nyunyu #20168 üzenetére
Mivel ez itt off topic, ezért itt reflektáltam rá.
-
pmonitor
aktív tag
válasz
VikMorroHun #20157 üzenetére
Ide mehetnek az ebben a topic-ban off-nak számító dolgok/rizsázás/stb...
-
pmonitor
aktív tag
válasz
kovisoft #20152 üzenetére
akkora fájlt kell rendezni, ami nem is fér el egyszerre a memóriában
Ott meg a fájl mérete konstans sztem. Végül a példádban is azt kell rendezni, nem a memóriában lévő dolgot. Tehát a file mérete attól még ismert(az az idő előre haladtával sem változik) hogy részenként olvasod be. De felőlem aztán nevezhetitek rendezésnek. Én nem annak tartom.
axioma: végülis asm-ben is magas szintű struktúrákat valósítasz meg. Csak valszeg. csökkentett funkciókkal, meg gyorsabban.
-
pmonitor
aktív tag
válasz
axioma #20149 üzenetére
Sztem. ez nem sorba rendezési algoritmus. Mégpedig azért nem, mert mindig növekszik a tömb hasznos hossza. Rendezési algoritmusoknál a tömb hossza mindig konstans. Legalábbis én még nem láttam olyan rendező algoritmust, ahol a tömb mérete növekszik(vagy csökken). Ha nem érdekes a sebesség, akkor ez is jó.
-
pmonitor
aktív tag
válasz
axioma #20147 üzenetére
Nem erre gondoltam. Ha nekem lenne házim, akkor a tömb feltöltésekor, a következő adat hozzáadásakor már sorba lenne. Gyakorlatilag egy 1 nagyon 1szerű SortedList-et valósítanék meg 1D tömbre. És egyrészt így 1szerre csak 1 ciklus megy, másrészt meg talán díjazná a prof, hogy használtam a szürkeállományom.
Voy15: Bár költői kérdésként írtad, de azért válaszolok rá. Azok a linkek egyrészt nem kitörölt/moderált posztok. Másrészt, ha valaki valamit ír, az vagy vállalja fel, amit írt, vagy módosítsa a véleményét. Harmadrészt általában az ilyen posztjaim nyom nélkül törlik is.
-
pmonitor
aktív tag
-
pmonitor
aktív tag
válasz
axioma #20138 üzenetére
Azért van 1-2 rendezési algoritmus.
-
pmonitor
aktív tag
kétlem, hogy a magyar nyelv szókincse elégtelen lenne.
De nem a magyar nyelv szókincse, hanem a magyar nyelv szókincse mínusz ez ittenke. Legalábbis ebben a fórumban. Nyilván a saját webhelyemen nagyobb a mozgástér. De azért a valóság bármelyik szegmensét nem lehet ott sem leírni.
De hogy maradjunk az itteni fórumnál, én azon is csodálkozom, hogy ez a posztod megmaradhatott. Ha én írtam volna, akkor lehet, hogy nem maradt volna meg...De pl az önkiszolgáló kasszák esetén sem értem, hogy miért nem jutott senkinek az eszébe az, hogy legkésőbb a nyugta nyomtatása előtt árucikkenként összesítenék a darabszámot. Csak ezzel mennyi papírt meg lehetne takarítani országosan? Hozzáteszem, hogy ezt nem csak az önkiszolgáló kasszákra, hanem a hagyományos pénztárakra is lehetne alkalmazni. Összefutottam olyan pénztárossal is, aki 14 darab táblás csokit egyesével csippantott le(úgy, hogy én 2 x 7 - es sorba készítettem elő neki). Na, aaz ilyeneket is kiszűrhetné a program. Azért nem mind1, hogy 14 sorba nyomtatja ki a gép, vagy max. 2 sorban. Közben meg a takarékoskodásról csevegnek az okosok(elektromos autó, zöld energia, szelektív hulladék gyűjtés stb...).
Mondjuk ezt pont le lehet írni itt is sztem. Nyilván olyant nem írok le, amit nem engednek meg, mert annak poszt törlés + kitiltás az eredménye. -
pmonitor
aktív tag
Az a helyzet, hogy nincs egy olyan platform, ahol az ember nyíltan tudna erről beszélni. Akár én, akár te, akárki más. Csak megpróbáljuk amennyire lehet nyomdafestéket tűrő keretek között megfogalmazni véleményünket. Így meg nehéz. Hogy a valóságot nem lehet leírni sehol sem. Egy ismerősöm azt szokta mondani, hogy:
A szövegelés hatalom nélkül semmit nem ér!
Nem szó szerint ezt mondta. Csak ez a nyomdafestéket tűrő változat... -
pmonitor
aktív tag
válasz
pmonitor #20128 üzenetére
Ebben a könyvben pontosan a felelősségről van szó. Ha nagyon röviden akarom leírni a tartalmát, akkor a következőt mondanám: A profi programozót az különbözteti meg a kezdőtől, hogy a profi programozó felelősséget kell, hogy vállaljon a munkájáért.
Ezzel kapcsolatos az alábbi programom. Kaptam 1 e-mailt, hogy:
szeretném használni a MyCutters
kódott.
Ami eddig nagyából sikerül is.A probléma akkor van ha az
alkatrész méret és darabszám párosból több van mint 25. Erre
van megoldás kérem ossza meg velem.
Előre is köszönöm.Hozzá kell tennem, hogy a programom teljesen ingyenes. Ettől függetlenül(ha nem is azonnal, de) természetesen foglalkozni fogok a dologgal. Csak előbb inkább át szeretném írni a kódot. OOP baráttá szeretném tenni a kódot(mert jelenleg nem az).
-
pmonitor
aktív tag
Gondoltam, hogy nem írok, mert JoinR postja frappáns(nagyon jó) végszava lett volna a témának. De ha már így alakult...
Van biztonsági őr, aki figyel.
Már ahol van. Mert a konkrét esetben nincs(legalábbis jól elbújt
)
Tapsi: De az sztem. a programozók felelőssége kellene, hogy legyen, hogy fel'homályosítsák az ügyfelet(ebben az esetben az üzletet) a kockázatokról. A konkrét példámban nem tudom, hogy Y üzletlánc esetében megtörtént-e? Sztem nem. Mert akkor lehet, hogy ott sem lenne elérhető a "több darabos bevitel" funkció.
De még1szer írom: Számomra JoinR posztja a mértékadó. Vagyis hogy biztonság nem létezik. Ilyen alapon tényleg nem szabadna(szabadott volna) egyetlen önkiszolgálót sem telepíteni.
Itt axioma írta először, hogy nem programozási témakör. Meg ti is folyamatosan off-ba teszitek a posztokat(velem együtt). Kérdés, hogy pl. ez programozásról szól-e? Bár az igaz, hogy pontosan én szoktam írni, hogy a "rizsát" mellőzni kellene. Tehát látszólag ellentmondok magamnak. De ez a rizsa a felelősségről szól(na) Ami sztem. nincs.. Nem hiszem, hogy off téma...
-
pmonitor
aktív tag
válasz
VikMorroHun #20122 üzenetére
De ha ilyen alapon nézzük, akkor gyakorlatilag be kellene szüntetni az összes önkiszolgáló kasszát. Mert ha én lopni akarnék és mernék is, akkor inkább olyan terméket vennék, amit nem kell a kimeneti raktérre tenni, tehát a kosaramban maradhat. Aztán az alá tenném, amit 'ingyé szeretnék elvinni.
axioma: nyilván az én nézetem. Sztem. senki nem csodálkozik, hogy én nem a te nézetedet írom le.
Egyébként maga a funkció benne van. Csak nem egy 1szerű halandó számára, hanem felügyelői kulcs kell hozzá. Innentől kezdve már a határidős érvelésed sem áll meg a lábán...
-
pmonitor
aktív tag
Én a programozási részére gondoltam. Tekintve a topic címére.
A programozók(is) azt csinálnak, amit akarnak. Teljesen mind1, hogy beteszik-e a szorzós változatot az önkiszolgáló kasszákba, vagy nem. Semmiért nem felelősek. Az egyik biztonsági okra hivatkozva nem teszi bele ezt a funkciót. A másiknál meg nem biztonsági ok, ezért beleteszi.
-
pmonitor
aktív tag
-
pmonitor
aktív tag
Adott X és Y üzletláncoknak x és y példánya.
x üzlet önkiszolgáló kasszájába nem teszik lehetővé 1 1szerű halandó számára, hogy ugyanabból az árucikkből 1szerre több darabot adjon meg az ügyfél.
Biztonsági okokra hivatkoznak.
Én ebben egyedül olyan "biztonsági" kockázatot látok, hogy valaki 6 piros árucikket ad meg 3 piros és 3 kék helyett. iszonyatosan nagy biztonsági kockázat!
De oké. Elfogadom, hogy biztonsági kockázat. Akkor y üzletben miért is nem biztonsági kockázat?Komolyan mondom, hogy lassan biztonsági okokra hivatkozva bármit meg lehet csinálni. Persze csak az egyik üzletben. A másikban nem.
-
pmonitor
aktív tag
válasz
pmonitor #19936 üzenetére
Egy kicsit összetettebb példakódot is írtam. A leírás itt található. A példa kód pedig itt.
Ezen világosan látszik a típusok címzése különböző típusok esetén.
-
pmonitor
aktív tag
válasz
VikMorroHun #20071 üzenetére
Gondolod, hogy jelentkezni fog(nak)?
-
pmonitor
aktív tag
válasz
pmonitor #20039 üzenetére
Jaaa. Meg még meg is figyelnek. Illegális felvételeket készítenek rólam. De ugye én paranoid szkizofrén vagyok, úgyhogy lehet, hogy csak beképzelem?? Csak ugye ez mellett még van parkinzonizmusom, szorongással kevert depresszióm is. Ki tudja? Majd csak kiderül valamikor, hogy csak képzelődöm-e a megfigyeléssel kapcsolatban...
-
pmonitor
aktív tag
válasz
pmonitor #20029 üzenetére
Azért gondolj bele: én "megtalálható" vagyok, mert nyilvánosságra hoztam az adataim.
Megtalálható vagyok, de ettől még nem csinálom össze magam. Ami a véleményem a fórumozó "programozókról", azt személyesen elmondom bárkinek. Csak vannak, akik az ember háta mögött szervezkednek. Persze ők is név nélkül.... A háttérben.
-
pmonitor
aktív tag
válasz
Vision #20025 üzenetére
Ma már nyilván nem az a kihívás, hogy jó vezérlési szerkezetet írjál, hanem hogy ismerd a framework lehetőségeit/korlátait,
Ha ezt a nebulók olvasták, akkor nem tudom, hogy kit szidnak, hogy őket meg ezekkel a vezérlési szerkezetekkel szívatják. És még meg is buknak, ha nem csinálják...
Én személy szerint a harmadik linkemmel értek egyet. Tehát hogy ahhoz, hogy modulokból/legókból(nevezzük, ahogy akarjuk) összerakjon valaki valamit, ahhoz tényleg nem kell zseninek lenni. Ez gyakorlatilag SM/betanított munka. Persze abban az esetben, ha nem kell még "bütykölni" valamit a "beszerzett" kódon.
#20030 JoinR: És a fizettség/kp hol marad?
-
pmonitor
aktív tag
válasz
nevemfel #20024 üzenetére
Valami igazság van benne. De azért hozzá kell tennem, hogy én a prog.hu-n "nevelkedtem". És ott eléggé szemét volt a vezetés velem(főleg a moderátor). Hát innen ragadt rám, hogy a fórumozó programozókat nem tartom nagyra. Főleg a névteleneket. Azért gondolj bele: én "megtalálható" vagyok, mert nyilvánosságra hoztam az adataim. Azért így teljesen más posztolni, mint névtelenül. Ettől függetlenül amit az elején írtam, az elég mélyen bennem maradt. Na meg a fáradékonyságom is közbeszól.
-
pmonitor
aktív tag
válasz
#79484416 #20022 üzenetére
Nem érzem találva magam.
Itt arról beszél az illető, hogy:igen, mindig van egy robosztus, teljesen tesztelt open source lib ami ezt es tobbet is tud jobban
De itt is arról van szó, hogy:
Egy fejlesztesnel pont az egyik utolso, hogy hany bajt beimportalni egy libet, sokkal tobb penzt es idot el lehet egetni azzal, ha valamit a 0-rol kellene production ready szintre lefejleszteni.
Továbbá itt is:
az esetek nagy részében az internetről simán letölthető és összedrótozható modulokból áll. Nem kell senkinek rakétatudósnak lenni, hogy egy ilyet összedobjon az elérhető legókból.
Nos, ha minden a programozó hátsója alá tesznek mindent, akkor mihez is kell az a nagy IQ? A modulok(legók) összedobásához sztanozs szerint sem kell rakétatudósnak lenni. Amit megoldottak, az mind elérhető. Ha ingyért, akkor is felszámítják az árban, de ha pénzbe kerül, akkor azt is. Tehát amit a programozó csinál, ahhoz nem kell zseninek lenni.
Egyébként már érted, hogy mi a különbség az érték- és referenciatípusok között?
-
pmonitor
aktív tag
válasz
dabadab #19987 üzenetére
Rólad jut eszembe, hogy én már bizony tizenegy éve is ugyanazt mondom, mint amit most(11 év elteltével). És büszke is vagyok rá! Az MS doksi enyhén szólva ellentmondásos. És most jön az, amit a másik fórumon szoktam néha írni: majd az olvasók eldöntik, hogy hogy lehetne valami egyszerre érték- és referencia típus. Rábízom az olvasókra. Gondolkodjanak el rajt. Aztán vonják le a tanulságot. Nem a doksi olvasása a lényeg, hanem egy jól működő példakód, hogy megértsen az emberke valamit. Márpedig ha valaki dolgozott már struct-al és class-al, akkor az első perc után fel kellene tűnnie, hogy a kettő teljesen más típus. Ég és föld.
-
pmonitor
aktív tag
válasz
hiperFizikus #19975 üzenetére
Ha doksit olvas, akkor nem mind1? Neki a doksi "a priori". Pedig nagy lendülettel kezdte el olvasni a doksit. Aztán nem tudom, hogy mire jutott. De úgy látszik, hogy a kérdésemre a válasz az, hogy nem világosodott meg a doksi alapján. De ha nem így van, akkor majd érvekkel alátámasztja. Gondolom...
-
pmonitor
aktív tag
válasz
pmonitor #19909 üzenetére
biztos vagyok benne, hogy nem a publikus kódokat fordítják élesben
Hát... Egyre biztosabb vagyok benne. Ennek a file-nak a 197-es sorában levő __asm kulcsszó úgy tudom, hogy már régen nem létezik. Az asm részeket külön file-ban kell létrehozni. Tehát úgy néz ki, hogy az is egy átverés, hogy ez az éles open source.
-
pmonitor
aktív tag
Mint régebben írtam, hogy megkérdezem(még akkor is ha esetleg nem kapok rá érdemi választ) a problémám.
Az asm témakörben már be linkeltem ezt. Nos, ezzel az volt a bajom, hogy fordítja le az IDE. Ha a parancssort nézem a tulajdonságok között, akkor az ml64.exe parancssora jónak tűnt. A file fordításánál kiírja, hogy az assembly fordítása elkezdődött. Hiba nélkül visszatér, de a .obj file nem jelenik meg sehol sem. Tehát gyakorlatilag helytelenül működik, amikor vagy meg kellene csinálnia a fordítást, vagy hibaüzenetet kellene adnia. Viszont ugye (mivel hibát nem ad) megy tovább a fordítás. Itt viszont egy későbbi fordítási egység hiányolja ezt a .obj file-t. Megpróbáltam IDE nélkül, csak sima parancssorba beütni a parancsot, de akkor is ugyanez volt. Hibát ott sem írt. Csak épp nem hajtotta végre a parancsot. Hosszabb keresgélés után megtaláltam ezt az oldalt. Mondom megpróbálom módosítani a .asm file-t olyan formulával, amit ezen az oldalon használnak. Tehát a.code
helyett úgy kezdtem, hogy_CODE SEGMENT
. A végére pedig a_CODE ENDS
szöveget. Le fordítottam a parancssorban, és működött. Létrehozta a .obj file-t. Ezután megpróbáltam az IDE-vel. Ez viszont továbbra sem fordítja le. Most jelenleg úgy oldottam meg, hogy Az IDE-ben futtatom a Clean parancsot. Ezután a parancssorban lefuttatom ennek a file-nak a fordítását. Majd a többit az IDE-vel fordítom, De csak Build paranccsal, nem a Rebuild-el. Ez ugyan az én "zsenialitásomnak " köszönhetően működik, de azért mégsem ez a normális fordítás.
De a neten kutatva találtam ezt az oldalt. Tehát a problémám nem egyedi. Valakinek lenne 5lete, hogy merrefelé kellene a hibát keresnem? A telepítésnél szúrhattam el vmit.? Vagy ez egyszerűen csak egy "bug" A VS-ben? -
pmonitor
aktív tag
válasz
sztanozs #19940 üzenetére
Akkor szted. így van valahogy:
object
|
----------------------------------------------------------
| |
ValueType System.ObjectDe itt egyértelműen a System.Object-re utal.
Inheritance Object ValueType
Ha az Object-szóra rákattintasz, akkor látszik, hogy egyértelműen a System.Object-re utal. Egyébként meg, ha én ezt írom:struct ReferenceType ....
Attól még a struct nem lesz referencia típus. Egy érték típus nem lehet osztály. Ez szembe megy minden szemlélettel, ami csak létezik. Nem tudom, hogy hogy képzeled el ezt a dolgot, de nagyon sok ellentmondás van a szemléletedben. Egy változó nem lehet egyszerre érték és referencia típus. Ez megint egy logikai nonszensz. -
pmonitor
aktív tag
válasz
sztanozs #19938 üzenetére
Mi is a problema? Az, hogy a GC nem foglalkozzik a stack-en levo valtozokkal?
Nem csak a stack-en lévő struct-okkal sem. A Heap-ban lévő struct-okkal sem foglalkozik, mivel a GC-nek nincs tudomása róluk. A Heap-ben lévő struct-ok igazából az objektum példányok adattagjai. De a GC nem tudja ezek címét. Esetleg úgy, hogy a számára létező objectum címeiben nincs benne. Egyébként, ha mégis benne lenne a címük, az katasztrófa is lenne. Végtelen ciklusba is keveredne a GC. A példámban az lngt tömb ugyebár int-eket tartalmazó referenci típus. Akkor szted. a GC az lngt tömbre is meghívná, meg a tömbben lévő {10, 20, 30} struct-okra is meghívná a destruktort egyesével, akkor mi is történne?
-
pmonitor
aktív tag
válasz
pmonitor #19935 üzenetére
Röviden:
A struct gyakorlatilag azt jelenti, hogy a változót "HELYBEN" hozza létre.
A class azt jelenti, hogy a változót mindig a heap egy szabad területén hozza létre.Van ez a C# kód:
namespace IntOseEAzObject
{
public class Program
{
static void Main(string[] args)
{
int[] lngt = { 10, 20, 30 };
Struktura strct = new Struktura(10, 20, 30, lngt);
long lng = strct.lng;
int lng_2 = strct.lng_2;
int lng_3 = strct.lng_3;
int lng_4 = lngt[0];
int lng_5 = lngt[1];
int lng_6 = lngt[2];
Console.WriteLine("{0} {1} {2} {3} {4} {5}", lng, lng_2, lng_3, lng_4, lng_5, lng_6);
}
}
struct Struktura
{
public int lng;
public int lng_2;
public int lng_3;
public int[] list;
public Struktura(int lng, int lng_2, int lng_3, int[] list)
{
this.lng = lng;
this.lng_2 = lng_2;
this.lng_3 = lng_3;
this.list = list;
}
}
}
Ez assemblyben így mutatkozik meg(csak a releváns részt másolom be ide:int[] lngt = { 10, 20, 30 };
011508A5 mov ecx,63F6639Eh
011508AA mov edx,3
011508AF call CORINFO_HELP_NEWARR_1_VC (0107322Ch)
011508B4 mov dword ptr [ebp-70h],eax
011508B7 mov ecx,1084EF4h
011508BC call 65485DE0 ;ez a metódus adja vissza az eax-ban az lngt[] címét.
011508C1 mov dword ptr [ebp-74h],eax
011508C4 lea eax,[ebp-74h]
011508C7 push dword ptr [eax]
011508C9 mov ecx,dword ptr [ebp-70h]
011508CC call 65485A80
011508D1 mov eax,dword ptr [ebp-70h]
011508D4 mov dword ptr [ebp-40h],eax
Struktura strct = new Struktura(10, 20, 30, lngt);
011508D7 push 14h
011508D9 push 1Eh
011508DB push dword ptr [ebp-40h]
011508DE lea ecx,[ebp-50h]
011508E1 mov edx,0Ah
011508E6 call IntOseEAzObject.Struktura..ctor(Int32, Int32, Int32, Int32[]) (01150450h)
long lng = strct.lng;
011508EB lea eax,[ebp-50h]
011508EE mov eax,dword ptr [eax+4] ;Itt mindig az ebp-hez viszonyított helyzethez határozza meg. strct[0] esetén ebp+4
011508F1 cdq
011508F2 mov dword ptr [ebp-58h],eax
011508F5 mov dword ptr [ebp-54h],edx
int lng_2 = strct.lng_2;
011508F8 lea eax,[ebp-50h]
011508FB mov eax,dword ptr [eax+8] ;strct[1] esetén ebp+8
011508FE mov dword ptr [ebp-5Ch],eax
int lng_3 = strct.lng_3;
01150901 lea eax,[ebp-50h]
01150904 mov eax,dword ptr [eax+0Ch] ;strct[3] esetén ebp+12
01150907 mov dword ptr [ebp-60h],eax
int lng_4 = lngt[0];
0115090A mov eax,dword ptr [ebp-40h]
0115090D cmp dword ptr [eax+4],0
01150911 ja IntOseEAzObject.Program.Main(System.String[])+0D0h (01150918h)
01150913 call 656EFE40 ;referencia típus esetén(lngt[0]) mindig ezt a metódust hívja meg, ami az eax-ban adja vissza a referencia címét, ami a heap-ben van. Előtte nem véletleül ellenőrzi le, hogy érvényes-e a cím.
01150918 mov eax,dword ptr [eax+8]
0115091B mov dword ptr [ebp-64h],eax
int lng_5 = lngt[1];
0115091E mov eax,dword ptr [ebp-40h]
01150921 cmp dword ptr [eax+4],1
01150925 ja IntOseEAzObject.Program.Main(System.String[])+0E4h (0115092Ch)
01150927 call 656EFE40 ;lngt[1] esetén is ugyanazt a metódust hívja meg.
0115092C mov eax,dword ptr [eax+0Ch]
0115092F mov dword ptr [ebp-68h],eax
int lng_6 = lngt[2];
01150932 mov eax,dword ptr [ebp-40h]
01150935 cmp dword ptr [eax+4],2
01150939 ja IntOseEAzObject.Program.Main(System.String[])+0F8h (01150940h)
0115093B call 656EFE40 ;lngt2 esetén is ugyanazt a metódust hívja meg.
01150940 mov eax,dword ptr [eax+10h]
01150943 mov dword ptr [ebp-6Ch],eax
Console.WriteLine("{0} {1} {2} {3} {4} {5}", lng, lng_2, lng_3, lng_4, lng_5, lng_6);
01150946 mov eax,dword ptr ds:[483244Ch]
0115094C mov dword ptr [ebp-78h],eax
0115094F mov ecx,63F664BAh
01150954 mov edx,6A kódba magyarázatot is tettem. Érdemes elgondolkodni rajt. Sztem.
-
pmonitor
aktív tag
válasz
sztanozs #19848 üzenetére
Ezt talán érdemes lenne elolvasnod. Aztán talán megértenéd, hogy mi is a különbség a class és a struct között. És hogy GC nem rendelkezik a struct-okról(nem tartja számon ezeket).
-
pmonitor
aktív tag
válasz
nevemfel #19933 üzenetére
Már írtam, hogy a számítógép nem olvas doksit!
-
pmonitor
aktív tag
válasz
#79484416 #19917 üzenetére
Szegény hülye programozók... a modulokból építkezés az nem is programozás, csak ők ezt nem tudják, mert dilettánsok
Idézet innen:
Maga a malware/ransomware és az azt célba juttató dropper az esetek nagy részében az internetről simán letölthető és összedrótozható modulokból áll. Nem kell senkinek rakétatudósnak lenni, hogy egy ilyet összedobjon az elérhető legókból.
Itt sztanozs is azt írja:
Nem kell senkinek rakétatudósnak lenni, hogy egy ilyet összedobjon az elérhető legókból.
Mondjuk Ő legónak nevezi. Ha már a "programozók" sem értenek egyet, az már érdekes kérdés.
-
pmonitor
aktív tag
válasz
#79484416 #19917 üzenetére
Minden programot nulláról kellene megírni max. assembly-ben
Szted ez mi, ha nem assembly? Ezzel kapcsolatban lenne egy kérdésem de most nem teszem fel, mert nincs rá időm. Majd később esetleg.
-
pmonitor
aktív tag
válasz
martonx #19906 üzenetére
Ez nem alacsony/magas szintű nyelv kérdése. Bár vannak, akik a C-t is a magas szintű nyelvek közé sorolják, de ha ezt nem is a C++-t biztosan.
Ekkor fogsz egy magas szintű nyelvet két nap alatt összerakod
Ehhez sztem. C++/C# nyelven is találni lehet valamiféle modult. Úgyhogy gyakorlatilag közel egyforma időt vesz igénybe mind2 nyelven. Ezért írtam, hogy gyakorlatilag ez nem programozás. Meg visszautalnék valamelyik nick egy posztjára, aki valami ilyesmit írt:és igen. Mindig találni fogsz egy nagyobb és agyontesztelt kódot, ami jobb, és többet is tud, mint amit te csinálsz...
Nem szó szerinti idézet, de a lényege ez. Lehet, hogy igazat írt. De mint írtam, ez gyakorlatilag bármelyik nyelvre igaz. Viszont a modulok összerakását, szinkronizálását én nem nevezném programozói munkának... -
pmonitor
aktív tag
Egyébként én nem bánom, hogy ilyenek is vannak. Gyakorlatilag én is azt használtam fel. Attól, hogy ezt nem nevezem programozói munkának, attól még pl. nekem, meg a hozzám hasonló programozgatóknak sztem. nem rossz ez. Nem kell mindenkinek "profi" programozónak lennie(bár sztem. igazából ilyen nincs is). Szóval én nem tartom rossznak, csak messze áll a programozói munkától. Azt azért sajnálom, hogy ahogy nézem, nem nagyon akarnak közvetlenül lefordulni. Szóval biztos vagyok benne, hogy nem a publikus kódokat fordítják élesben. Ugyanis a publikus kódok nem nagyon akarnak fordulni... De kisebb-nagyobb "barkácsolással" talán azért fordíthatóvá válnak. De az átverő programozó cégeknek 1szerű a módszere: felhasználja a free kódokat szinte zéró munkával, fizetőssé teszi, és beleírja abba a bizonyosba, hogy tilos a kódot visszafejteni. Ilyen 1szerű az egész.
-
pmonitor
aktív tag
Hogy milyen véletlenek vannak! Ugyebár én a ebben a posztban a lame_enc.dll-t használtam fel. A .dll-t 1szerűen csak leszedtem a netről. Aztán később a forráskódját felhasználva meg tudtam csinálni, hogy én magam állítsam elő a .dll-eket.
Aztán sztanozs ajánlotta a freac-ot. Most néztem szét kicsit jobban a freac oldalán. És megtaláltam ezt. Mit is látok itt a jobb alsó negyedben? Ezt:
Selected encoder: LAME MP3 Encoder v3.100
Az a helyzet, hogy a netről leszedett modulokat használják a kész programokhoz.
Ezt csak azért hoztam fel, hogy igazából már nem programozás van a legtöbb esetben, hanem csak ilyen kész(vagy félig kész) modulok felhasználása, összerakása. Ez aligha nevezhető programozásnak. Aztán persze az user-ek azt hiszik, hogy a kész programot teljes egészében egy cég készítette. Pl. amint itt az egyik "programozó" azt írja, hogy:Legfeljebb nem 500 K lesz a mérete, hanem 50 M. Kit érdekel?
Na ezt nem nevezném programozásnak... A programozás jó része csak átverés. Tisztelet a kevés kivételnek. Mert azért olyan is akad.... -
pmonitor
aktív tag
válasz
#79484416 #19883 üzenetére
miközben szerintem azt se tudja, mi minden kellene alá...
Olvastad ezt a posztom?
Időközben megtaláltam itt a smooth-ot és a boca-t.
Hirtelen megpróbáltam lefordítani a smooth-ot. Az meg mást hiányol. Túl hamar írtam. Hosszabb időt kell ezzel eltölteni...Az túlzás, hogy hisztizem, de az igaz, hogy túl korán írtam. De amint látom, ti is csak trollkodtok. Ahelyett, hogy leírnátok, hogy hogyan kell.
Bocs, találkoztam ma egy másik hasonszőrű futóbolonddal és elfelejtettem, hogy ez se százas
-->> ez egyértelműen trollkodás.Ide sem érdemes jönni kérdezni. Mondjuk ezt már rég tudtam. Viszont azt persze állítják, hogy az int őse az object C#-ban!! Segítőkészség meg egy szál se!
-
pmonitor
aktív tag
válasz
pmonitor #19877 üzenetére
Időközben megtaláltam itt a smooth-ot és a boca-t.
Hirtelen megpróbáltam lefordítani a smooth-ot. Az meg mást hiányol. Túl hamar írtam. Hosszabb időt kell ezzel eltölteni...@nemethg66: már írtam, hogy a számítógép nem olvas doksit. Erre jó példa volt az, hogy az int-nek őse-e az object.
Mert amit sztanozs írt, az azt jelentené, hogy pl. az int egyszer értéktípus, máskor pedig referenciatípus. De a kettő kizárja egymást.
-
pmonitor
aktív tag
válasz
sztanozs #19874 üzenetére
Most így hirtelen megnéztem ezt a a freac-ot. Az első problémája ez volt:
Error C1083 Cannot open include file: 'smooth.h': No such file or directory freac DLL
Meg még hiányolja a boca.h-t is. Egy kis ideig azt csináltam, hogy a neten megkerestem az ilyen nevű file-okat, de csak egyre több hibát ír ki. Szóval ezzel lehetne mit boxolni.
Azt nem értem, ha már fellövik a github-ra, akkor miért nem töltenek fel egy működő változatot? Ahol max. csak elgépelés van, de file-ok nem hiányoznak? Vagy akkor miért teszik fel úgy, hogy egy fényévre van a fordíthatóságtól?
Úgyhogy ezt feladom. -
pmonitor
aktív tag
válasz
sztanozs #19874 üzenetére
Öröm és boldogság. Az innen letölthető 3.100-as verzió fordul 32 és 64 bitesre egyaránt. És még működnek is.
A Itt beletettem az audioconv mappában.
És még jóval kisebb méretűek annál, amit a netről töltöttem le. A netről letöltöttek mérete:
32 bites: 412 K.
64 bites: 1441 K.A 3.100 as verzóval fordítva:
32 bites: 250 K.
64 bites: 320 KAzért érthetetlen, hogy ekkora különbségek vannak a file-ok között. Főleg a 64 bites esetében a 320 K vs. 1441 K nagyon durva különbség.
De a legfőbb, hogy sikerült egy 32 és 64 biten is működő forráskódot találnom/összeraknom.
Ezért imádom a programozgatást. Mert nagyon jó tud lenni, amikor valami működőt sikerül összeraknom. Most már lehet magát a kódot nézegetni. Hogy milyen elven működik. -
pmonitor
aktív tag
válasz
sztanozs #19840 üzenetére
Nem az volt a baj, hogy nem msvc-vel fordítottam. Egy csomó elírási hiba volt benne. Backslash-ek helyett sima perjel volt. "libmp3lame.lib" helyett pl. "libmp3lame-static.lib"-et készített stb... Végülis pár óra szöszmötölés után létrehoztam ezt a működő verziót. Ezzel csak annyi gond van, hogy 32 biten működik, 64 biten nem. Úgyhogy az éles projektben hagyom a netről letöltött változatokat. Annak mind1, hogy 32 vagy 64 bit.
De legalább most már azt is tudom, hogy msvc-vel is lehet fordítani...
Csak sajnos a betegségem/állapotom miatt egyszerre nem tudok sokáig koncentrálni, mert hamar elfáradok. De azért a saját tempómban csinálom. Azért köszi a választ. -
pmonitor
aktív tag
válasz
sztanozs #19848 üzenetére
Az igaz, hogy a probléma az unboxing miatt van. Ezzel egyetértek. De sztem. ez egyértelműen bizonyítja, hogy "alapesetben" nincs unboxing, mivel nincs object(pl. két long típus esetén nincs jelen egy object sem). Ezért nem őse az értéktípusoknak az object. Mert akkor az első ciklusnál is lenne boxing-unboxing. De természetesen nem így van. Ezért mondom, hogy az object csak kompatibilis az értéktípusokkal, de nem őse nekik.
-
pmonitor
aktív tag
válasz
#79484416 #19838 üzenetére
a számítógép az utasításaid és nem a kívánságaid szerint működik.
Nézzük, hogy működik a számítógép. Van a következő C# kód:
using System;
using System.Diagnostics;
namespace ConsoleApp1
{
internal class Program
{
static void Main(string[] args)
{
long i = 0, j = 0, m = 0;
Stopwatch sw = Stopwatch.StartNew();
for (m = 0; m < 3000000000; ++m)
{
i = m;
j = i;
}
long n = sw.ElapsedMilliseconds;
object k;
for (m = 0; m < 3000000000; ++m)
{
k = m;
j = (long)k;
}
long p = sw.ElapsedMilliseconds;
Console.WriteLine("{0} {1} {2} {3}", j, m, n, p - n);
Console.ReadKey();
}
}
}A második ciklus 2-3 szoros idő alatt fut le, mint az első.
Ez eddig tény.-----------------------------------------------------------------------------------------------------------
Szerintem ez csak úgy lehetséges, hogy az első ciklusban nincs sem object, sem ValueType, sem boxing, sem unboxing, sem semmi. Ott csak egy szimpla struct van. Csupaszon.
A második ciklusban valóban létrejön az object, a ValueType, van boxing és unboxing. De "k" nem long, hanem Object, ami egy becsomagolt long-ot tartalmaz.
Ez az én véleményem. Ami ugyan nem tény, de meg lehet cáfolni értelmes magyarázattal. Ezeket szívesen fogadom.
-----------------------------------------------------------------------------------------
sztanozs #19840: ha lesz energiám és időm, akkor még foglalkozom vele. De ránézésre úgy van, ahogy írod. Köszi előre is.
-
pmonitor
aktív tag
válasz
sztanozs #19834 üzenetére
Ezzel próbálkozom ezzel társítva, de nekem sajnos nem jött össze.
-
pmonitor
aktív tag
Én programozásra gondoltam. De mind1. A lame_enc.dll-es megoldás is megfelel, ha más nincs.
A C#-ot illetően meg akkor, ha nem örököl a "struct" semmit, akkor hogy örökölne bármit is az "object"-től? Ráadásul az object az egy osztály. Attól meg főleg hogy örökölne, mikor még másik "struct"-tól sem örökölhet?
-
pmonitor
aktív tag
válasz
dabadab #19820 üzenetére
Ha az object a struct őse lenne, akkor pl. ez miért nem működik?
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace GenericTest
{
interface ITorol
{
void delete();
}
class GenerikusTipus<T>
{
T adat;
public GenerikusTipus(T adat)
{
this.adat = adat;
}
public T GetErtek()
{
return adat;
}
public void TorlunkHaTudja()
{
if (adat is ITorol)
(adat as ITorol).delete();
}
}
struct Valami : ITorol
{
public int ertek;
public Valami(int ertek)
{
this.ertek = ertek;
}
public void delete()
{
ertek = 0;
}
new public string ToString()
{
return ertek.ToString();
}
}
class Program
{
static void Main(string[] args)
{
Valami v = new Valami(5);
GenerikusTipus<Valami> genTip = new GenerikusTipus<Valami>(v);
Console.WriteLine(genTip.GetErtek().ToString());
genTip.TorlunkHaTudja();
Console.WriteLine(genTip.GetErtek().ToString());
Console.ReadKey();
}
}
}Mert ugye class esetén működik. Innen is látszik, hogy a struct és a class teljesen más típus!
De még az is tény, hogy a struct NEM örököl. Semmitől! Nemhogy az object-től! -
pmonitor
aktív tag
válasz
pmonitor #19818 üzenetére
Valamint ezt is figyelmetekbe ajánlom.
Na, ezért mondom, hogy dumálni könnyű! De látsziok, hogy nem sokat kódoltatok C#-ban!
-
pmonitor
aktív tag
válasz
disy68 #19813 üzenetére
A ValueType Osztály hogy lenne már érték típus?
Ajánlom figyelmedbe ezt a diskurzust.
Úgyhogy hülyeség, amit írt.
-
pmonitor
aktív tag
válasz
axioma #19809 üzenetére
Én a saját példámból indulok ki. Én egy "működő"* kódbol szoktam kiindulni, és azt próbálom megérteni. Főleg a buktatóit. Én nem szeretek "rizsából" tanulni. Főleg, ha látszik a rizsából, hogy valaki még nem is foglalkozott a témával. Pl. egy magát profinak beállító emberke azt állítja, hogy C#-ban az int őse az object. Közben több, mint 100 K pontot összegyűjtött az ilyen "szakmai" tudásával(persze mind rizsával). Na, az ilyenek miatt vallom én azt, hogy aki nem ír példakódot, ő számomra nem szaki, főleg nem profi. Csak ezeket állítja magáról. Az a helyzet, hogy ilyent állítani(dumálni) könnyű.
*: működő kódnak mondom én azt is, hogy ha nem is copy paste működik ugyan, de rövid idő alatt működővé lehet tenni. Tehát pl. elgépelés az oka a nem működésnek.
-
pmonitor
aktív tag
Nemrég tettem közzé egy audió konvertáló programot, amit a weben "találtam". Az mp3 -> wav konvertáló része működik, mint a zsír. Azonban a wav -> mp3 részével 2 probléma is van. Az egyik, hogy másik fél által készített dll-t kell hozzá használni(lame_enc.dll). A másik, hogy meglehetősen lassú. A harmadik, hogy még így sem találtam olyan forrást, ami VS-ben lefordult volna. Tehát igazából az open source nekem mégsem open source. Ha valaki sikeresen lefordította már a lame_enc.dll-t VS-ben, örülnék, ha megosztaná vel(em/ünk), hogy honnét töltötte le a forrást, és hogy a fordításnak mik a buktatói.
Egyébként, mivel ennek a konvertálása lassú is, ezért olyan megoldás is érdekelne, amely az említett dll nélkül tud wav -> mp3 konvertáló forrást.
"Legrosszabb" esetben marad ez. -
pmonitor
aktív tag
válasz
axioma #19760 üzenetére
nincs minden reklamban MI targetalas
Hát igen. a valóságban ha létezik is MI, akkor sem egy női-férfi ruházati bolt alkalmazza azt a webáruházában. Az csak a multik egy részének adatik csak meg. Még a multik közül is csak nagyon kevésnek.
Bár amit írtam, ahhoz nem is kell(ene) MI, csak azt kellene megállapítani, hogy pl. a ferenc az nem női, hanem férfi név. Még ezt sem nevezném MI-nek. -
pmonitor
aktív tag
válasz
#79484416 #19751 üzenetére
Annyi, amennyi az előző "témának". Ahol más munkájával(nem a saját munkával) ment a dicsekvés(Docker készítők VM készítők). Na meg azért itt is aktív téma az MI. Pl. ittenke.
-
pmonitor
aktív tag
MI magasfokon!
A napokban kaptam egy üzenetet. A szöveg a cég megnevezése nélkül:
2024-ben is elérhetők a xxxxxx.hu -n a legnépszerűbb melltartó márkák.
Neked melyik a kedvenced?
Új hozzászólás Aktív témák
Hirdetés
● olvasd el a téma összefoglalót!
- Sony MILC fényképezőgépcsalád
- Óra topik
- Milyen routert?
- Kivégzi a Firewire-t az új macOS verzió?
- ubyegon2: Airfryer XL XXL forrólevegős sütő gyakorlati tanácsok, ötletek, receptek
- GTA VI
- Arena Breakout: Infinite
- NVIDIA GeForce RTX 5070 / 5070 Ti (GB205 / 203)
- Háztartási gépek
- Házimozi belépő szinten
- További aktív témák...
- i3-8100 + ASUS H310M alaplap + 8GB RAM egyben (félkonfig)
- Asztali PC , R5 5500 , RX 6700 XT , 32GB RAM , 512GB NVME , 1TB HDD
- Sony PlayStation 5 Fat 825 GB eredeti doboz, gyári kontroller
- Dell XPS 3K Érintős,core i7,16GB RAM,256-512GB SSD,ÚJ AKKU,ÚJ TÖLTŐ,Szép állapot
- AKCIÓ!!!Acer V3,FullHD core i5 6200u(4X2,8Ghz),8GBRAM,nVme
- Samsung Galaxy A32 4G 128GB, Kártyafüggetlen, 1 Év Garanciával
- LG 77G3 - 77" OLED evo - 4K 120Hz 0.1ms - MLA - 2000 Nits - NVIDIA G-Sync - AMD FreeSync - HDMI 2.1
- Telefon felvásárlás!! Xiaomi Redmi Note 13, Xiaomi Redmi Note 13 Pro, Xiaomi Redmi Note 13 Pro+
- AKCIÓ! MSI B550 R7 5700X 32GB DDR4 512GB SSD RTX 3060Ti 8GB Rampage SHIVA MSI 650W
- Csere-Beszámítás! Sapphire Pulse RX 9070 XT 16GB Videokártya! Bemutató darab!
Állásajánlatok
Cég: CAMERA-PRO Hungary Kft
Város: Budapest
Cég: Promenade Publishing House Kft.
Város: Budapest