játékfejlesztés.hu
FórumGarázsprojectekCikkekSegédletekJf.hu versenyekKapcsolatokEgyebek
Legaktívabb fórumozók:
Asylum:    5471
FZoli:    4892
Kuz:    4455
gaborlabor:    4449
kicsy:    4304
TPG:    3402
monostoria:    3284
DMG:    3172
HomeGnome:    2919
Matzi:    2525

Pretender:    2498
szeki:    2440
Seeting:    2306
Geri:    2194
Orphy:    1893
Joga:    1791
Bacce:    1783
MaNiAc:    1735
ddbwo:    1654
syam:    1491
Frissebbek | Korábbi postok
[1] [2] [3] [4] [5] [6] [7] [8] [9] [10] [15] [20] [25] [30] [35] [40] [45] [50] [55] > 60 < [65] [70] [75] [80] [85] [90] [95] [100] [105] [110] [115] [120] [125] [130] [135] [140] [142]
svn - Tag | 92 hsz       Online status #126027   2010.01.09 21:55 GMT+1 óra  
Idézet
fpeti :
Csak okulásképpen, megtaláltam a 'hibát', mi xaratja be:
Kód:
CList<CIList<ITM*>> obj;

(Csak 4 este ment rá, halleluja & bakker)
VC6 nem szerette (typedef kellett anno neki), de vs2005-ben már nem volt baj, most úgy látszik megint előjött. Ahova be volt includolva ez, abban megszűnt az IntelliSense támogatás, talán jó tudni.



Ez a kod alapban szar, mert igy kene: CList<CList<ITM*> > Obj

Az intellisense halal altalaban jelzi hogy elotte valamilyen kod el van irva. Csodalom hogy emiatt nem kaptal compiler hibat.

Szerk : ez azért van, mert itt külön kell választani a >> és > > kódot, mivel az egyik egy stream operátor a másik meg sokmindent jelenhet. (vagy mittomén mi a hivatalos neve)

Lehet szidni az intellisenset, de ha nem írsz hibás kódot akkor működik...

Persze ha csak rosszul másoltad be a kódod akkor nem szóltam...

Ezt a hozzászólást svn módosította (2010.01.10 00:59 GMT+1 óra, ---)
bőgtem bazdmeg, mint carlos szokott amikor nem kap rózsaszín nyalókát a boltban... by Admiral Pecek
   
fpeti - Törzstag | 1295 hsz       Online status #126012   2010.01.09 14:43 GMT+1 óra  
Csak okulásképpen, megtaláltam a 'hibát', mi xaratja be:
Kód:
CList<CIList<ITM*>> obj;

(Csak 4 este ment rá, halleluja & bakker)
VC6 nem szerette (typedef kellett anno neki), de vs2005-ben már nem volt baj, most úgy látszik megint előjött. Ahova be volt includolva ez, abban megszűnt az IntelliSense támogatás, talán jó tudni.
   
fpeti - Törzstag | 1295 hsz       Online status #125920   2010.01.08 12:09 GMT+1 óra  
VC9 IntelliSense-e kezd megbolondulni szokás szerint nálam, sokat kerestem neten, mindent kipróbáltam amit lehetett (állítgatások, .ncb törlése, újraforgatás, csak a problémás fileokból új projekt építése - ott persze ment).
Itt
http://social.msdn.microsoft.com/Forums/en-US/vcgeneral/thread/cac1d4d1-8c9b-485d-92f1-ea19648d1614
olvastam, hogy van log-ja is ha ezt beállítom környezeti változónak:
FEACP_LOG_OPTIONS c:\intellisense.log
Kipróbáltam, de nem hozza létre a filet, pedig nagyon érdekelne mi baja van éppen.
(Mondjuk erre a FEACP_LOG_OPTIONS -ra csak 1 találat volt a neten, az is vs2005-re)
- mindenhol az van, hogy inkább fizetős alternatíva kéne -
Fogalmam sincs, mit lehetne még csinálni. (állítólag vs2010-ben teljesen újra lesz írva)
   
dvorgaz - Törzstag | 576 hsz       Online status #125545   2010.01.04 08:44 GMT+1 óra  
Ok, akkor nem az volt a kérdés, amit annak gondoltam
   
Lazarus - Törzstag | 313 hsz       Online status #125544   2010.01.04 08:42 GMT+1 óra  
Idézet
Asylum :
x = r * cos(alfa);
y = r * sin(alfa);

ahol r a sugár



Zsír! köszi szépen

dvorgaz: Y-t kell elosztani kettővel és megvan az izometrikus nézet.
█▓▒░ All system gone, prepare for downcount! ➡ ➎➍➌❶ Offblast! ➔
   
dvorgaz - Törzstag | 576 hsz       Online status #125542   2010.01.04 08:37 GMT+1 óra  
De szerintem ez nem kör, hanem ellipszis. Az nem működne, hogy a sebességvektort függőlegesen összenyomod (y koordinátát skálázod), aztán hozzáadod a pozícióhoz?

szerk.: ebben az esetben a sebesség egy 2d vektor lenne persze, aminek s a hossza és alfa az elfordulása
   
Asylum - Törzstag | 5471 hsz       Online status #125538   2010.01.04 08:31 GMT+1 óra  
x = r * cos(alfa);
y = r * sin(alfa);

ahol r a sugár
C++ fordítóval és macival alszom
http://darthasylum.blog.hu/
   
Lazarus - Törzstag | 313 hsz       Online status #125536   2010.01.04 07:52 GMT+1 óra  
Matek függvénytáblázatom sikeresen elhagytam, szeretnék kérni egy kis segítséget.

Van egy kocsim aminek adott a sebessége floatban és az iránya fokban, az eltelt időt most inkább nem keverem bele mert nem lényeges. Meg akarom tudni hogy a következő pillanatban mekkora lesz az x és y elmozdulása



Nekem a pirosat sikerült megvalósítanom aránypáros barmolással, a piros keret a fokokban megadott irányhoz mért elmozdulás mértéke. Nekem viszont a zöld kör kéne, abból is az X és az Y hosszúsága. az S a sebesség az alfa pedig az irány

A piros keret forráskódja így néz ki:
Kód:
float final_x, final_y;

if (angle < 90)
{
final_x = 1;
final_y = 1;
}
else if (angle < 180)
{
final_x = 1;
final_y = -1;
}
else if (angle < 270)
{
final_x = -1;
final_y = -1;
}
else
{
final_x = -1;
final_y = 1;
}

float cosinus = cos(angle*PI/180);

y = abs(lenght * cosinus)*final_y;
x = (lenght - abs(y))*final_x;


Egy kicsit idiótán fogalmaztam meg, de azért remélem valaki tud segíteni
█▓▒░ All system gone, prepare for downcount! ➡ ➎➍➌❶ Offblast! ➔
   
svn - Tag | 92 hsz       Online status #125411   2010.01.02 14:17 GMT+1 óra  
Hát nézegetve a gzip-es cuccokat, sokkal hatékonyabb nem létezik, mivel írják is a manualban hogy a gzseek baromi lassú.
bőgtem bazdmeg, mint carlos szokott amikor nem kap rózsaszín nyalókát a boltban... by Admiral Pecek
   
bit.0x8000 - Törzstag | 574 hsz       Online status #125409   2010.01.02 13:35 GMT+1 óra  
Idézet
Asylum :
Valoszinüleg a háttérben ez is valami bufferbe olvas. Egyébként nem nehéz egy egyszerü tömöritöt irni, biztos használhatobbra meg tudnád irni te is.



Most valahogy nincs affinitásom hozzá.

Amúgy a kódrészlet a mostani megoldásból (ha valaki tud jobbat, ne tartsa magában ) :

Kód:
gzFile file;
vector<char *> buffers;
int buffer, length;

if (!(file = gzopen(location.c_str(), "rb"))) return NULL;
for (buffer = 0; !gzeof(file);)
{   buffers.push_back(new char[BUFFER_LENGTH]);
    length = gzread(file, buffers[buffer++], BUFFER_LENGTH);
}
gzclose(file);
//Ésatöbbi, ésatöbbi
   
Asylum - Törzstag | 5471 hsz       Online status #125407   2010.01.02 13:18 GMT+1 óra  
Jah oké akkor félreértettelek, sorry.

Valoszinüleg a háttérben ez is valami bufferbe olvas. Egyébként nem nehéz egy egyszerü tömöritöt irni, biztos használhatobbra meg tudnád irni te is.

http://en.wikipedia.org/wiki/Lempel%E2%80%93Ziv%E2%80%93Welch
C++ fordítóval és macival alszom
http://darthasylum.blog.hu/
   
bit.0x8000 - Törzstag | 574 hsz       Online status #125405   2010.01.02 13:14 GMT+1 óra  
Idézet
Asylum :
lzw tmöritésnél ez már tényleg érdekes. Majd megnézem késöbb, nem használtam még.



Amúgy sikerült viszonylag egyszerűen megoldani a dolgot, csak kíváncsi lettem volna más megközelítésekre is. (Ha már szóba került ez a fájlbeolvasósdi.)
   
Asylum - Törzstag | 5471 hsz       Online status #125404   2010.01.02 13:06 GMT+1 óra  
lzw tmöritésnél ez már tényleg érdekes. Majd megnézem késöbb, nem használtam még.
C++ fordítóval és macival alszom
http://darthasylum.blog.hu/
   
bit.0x8000 - Törzstag | 574 hsz       Online status #125403   2010.01.02 12:59 GMT+1 óra  
Idézet
Asylum :
Na várj...általában a tömöritett fájloknak szokott lenni egy leiró headerje ami például megmondja h milyen fájlok vannak benne, azok méretét, pozicioját stb.



Én is gondoltam erre, de a zlib-ben nem találtam erre utalást.
http://www.zlib.net/manual.html#Gzip
   
Asylum - Törzstag | 5471 hsz       Online status #125401   2010.01.02 12:52 GMT+1 óra  
Na várj...általában a tömöritett fájloknak szokott lenni egy leiró headerje ami például megmondja h milyen fájlok vannak benne, azok méretét, pozicioját stb.

1) beolvasod a headert, abban a megkeresed a keresett fájlod pozicioját,betömöritett méretét
2) lefoglalsz két buffert a talált méretek alapján
3) beolvasod az egyik buffba a tömöritett fájlt
4) algoritmussal végigiterálsz rajta és kiirod a nagyobb buffba

Most megin utálni fogtok de egyébként az elméleti programozásnál szekvenciális inputfájlban nem lehet visszalépni XD Tehát ha a tömöritöalgoritmus olyan hogy vissza kéne lépni benne az már gáz.
C++ fordítóval és macival alszom
http://darthasylum.blog.hu/
   
bit.0x8000 - Törzstag | 574 hsz       Online status #125399   2010.01.02 12:47 GMT+1 óra  
Idézet
Asylum :
Beolvasnám egy bufferbe ugyanigy aztán végigiternálék rajta. Gyorsabb mindenképpen.
Asszem a flex meg a bison parserek is igy csinálják (csak nem egyszerre az egészet).



A konkrét példában az jelenti a gondot, hogy csak a tömörített fájl méretét tudod előre, azt nem, hogy kitömörítve mennyi helyet foglal majd...
   
Asylum - Törzstag | 5471 hsz       Online status #125396   2010.01.02 12:37 GMT+1 óra  
Beolvasnám egy bufferbe ugyanigy aztán végigiternálék rajta. Gyorsabb mindenképpen.
Asszem a flex meg a bison parserek is igy csinálják (csak nem egyszerre az egészet).

szerk.: söt ha van a fájlformátumnak headere akkor csak annyit olvasnék be.

Ezt a hozzászólást Asylum módosította (2010.01.02 12:46 GMT+1 óra, ---)
C++ fordítóval és macival alszom
http://darthasylum.blog.hu/
   
bit.0x8000 - Törzstag | 574 hsz       Online status #125395   2010.01.02 12:35 GMT+1 óra  
Idézet
Asylum :
Szó nincs itt zippelt fájlról vagy akármi másról ami karakterenkénti olvasást igényelne.



Nem írtam, hogy volt, csak kíváncsi lettem volna, hogy azt hogyan oldanád meg. No mindegy...
   
svn - Tag | 92 hsz       Online status #125393   2010.01.02 12:28 GMT+1 óra  
Én nem mondtam, hogy karakterenként. Csak azt, hogy olvasd be fstream-el. Esetleg seekelj benne.
bőgtem bazdmeg, mint carlos szokott amikor nem kap rózsaszín nyalókát a boltban... by Admiral Pecek
   
Asylum - Törzstag | 5471 hsz       Online status #125392   2010.01.02 12:26 GMT+1 óra  
Már megvan mit irtam el.
C++ fordítóval és macival alszom
http://darthasylum.blog.hu/
   
svn - Tag | 92 hsz       Online status #125391   2010.01.02 12:26 GMT+1 óra  
Jah igen, és ha mutatnál egy kódrészletet az sokat segítene, hogy megmondjuk mit írtál el benne.

Igen és újra felteszem a kérdést, 3 gigás file-val mit teszel? (ott már a seek nem működik)
bőgtem bazdmeg, mint carlos szokott amikor nem kap rózsaszín nyalókát a boltban... by Admiral Pecek
   
Asylum - Törzstag | 5471 hsz       Online status #125390   2010.01.02 12:26 GMT+1 óra  
Idézet
bit.0x8000 :
Ez így barátságos, most ugyanezt gzip-pelt fájlból (mondjuk zlib-bel) ?



Ember olvasd már el a problémát:

"My goal is to efficiently read a file into a c++ string, discarding
newlines"

Szó nincs itt zippelt fájlról vagy akármi másról ami karakterenkénti olvasást igényelne.
C++ fordítóval és macival alszom
http://darthasylum.blog.hu/
   
bit.0x8000 - Törzstag | 574 hsz       Online status #125388   2010.01.02 12:22 GMT+1 óra  
Idézet
Asylum :
vicctopic folyt:

Kód:
std::ifstream f(dest.c_str());

f.seekg(0, std::ios::end);
int length = f.tellg();
f.seekg(0, std::ios::beg);

std::string str;
str.resize(length + 1, '\0');

f.read(&str[0], length);




Ez így barátságos, most ugyanezt gzip-pelt fájlból (mondjuk zlib-bel) ?

Idézet
Asylum :
Kérdezni meg azt akarom hogy tapasztaltatok már olyat, hogy kiirtatok fájlba egy buffert és nem csak a buffert irta ki hanem még mögé egy csomo szemetet is?



A buffer maga hogy nézett ki?
   
svn - Tag | 92 hsz       Online status #125387   2010.01.02 12:21 GMT+1 óra  
Akkor valamit félreértesz / félreírsz a rendszerben. Az fstream jól írja ki a cuccokat, ha jól adod meg a méreteket.
bőgtem bazdmeg, mint carlos szokott amikor nem kap rózsaszín nyalókát a boltban... by Admiral Pecek
   
Asylum - Törzstag | 5471 hsz       Online status #125386   2010.01.02 12:19 GMT+1 óra  
Nincs rosszul megadva az tuti.

szerk.: nehogymá egy 3 gigás fájlt karakterenként olvass...ennyire nem lehetsz marha.
szerk2.: asszem már tudom mi a hiba, persze változik a mérete.
C++ fordítóval és macival alszom
http://darthasylum.blog.hu/
   
svn - Tag | 92 hsz       Online status #125385   2010.01.02 12:19 GMT+1 óra  
Mi történik ezzel, ha 3 gigás a fájlod?

A kérdésre a válasz, nálad van valószínűleg a hiba. Rosszul van megadva egy bufferméret...
bőgtem bazdmeg, mint carlos szokott amikor nem kap rózsaszín nyalókát a boltban... by Admiral Pecek
   
Asylum - Törzstag | 5471 hsz       Online status #125383   2010.01.02 12:15 GMT+1 óra  
vicctopic folyt:

Kód:
std::ifstream f(dest.c_str());

f.seekg(0, std::ios::end);
int length = f.tellg();
f.seekg(0, std::ios::beg);

std::string str;
str.resize(length + 1, '\0');

f.read(&str[0], length);



Kérdezni meg azt akarom hogy tapasztaltatok már olyat, hogy kiirtatok fájlba egy buffert és nem csak a buffert irta ki hanem még mögé egy csomo szemetet is?
C++ fordítóval és macival alszom
http://darthasylum.blog.hu/
   
bit.0x8000 - Törzstag | 574 hsz       Online status #125229   2009.12.31 17:36 GMT+1 óra  
Idézet
TheProGamer :
Ha jól rémlik akkor valahogy úgy volt ez definiálva hogy a program jó inputokra jó outputokat állítson elő, és a futása fejeződjön be valamikor.



Majd ha egyszer 3D grafika programozására adom a fejem, előszeretettel fogom ezt a mondatot (és főleg az utolsó részét) hangoztatni.

szerk: Ok, én a kódoláshoz (is) viszonylag intuitívan állok hozzá, szóval az elméleti hátteret illetően valószínűleg nektek van igazatok.

písz
   
bit.0x8000 - Törzstag | 574 hsz       Online status #125228   2009.12.31 17:30 GMT+1 óra  
Idézet
Asylum :
Ez hogy ennyi nap mulva be fog ez következni lényegtelen mert például biztos lesz addig áramszünet.



Ennyi idő alatt atom/vegyi/hagyományos/c++ apokalipszis is lesz valószínűleg, szóval tényleg lényegtelen.
   
Asylum - Törzstag | 5471 hsz       Online status #125225   2009.12.31 17:13 GMT+1 óra  
Az egyetlen dolog amire pp-böl emléxem az a mindig igaz és az invariáns közti különbség.
A mindig igaz az ugyebár mindig igaz, viszont az invariáns akkor is igaz amikor a mindig igaz nem!
És ez baromi fontos, általában arra törekednek az ilyen biztonságkritikus programoknál, hogy invariánst találjanak.
C++ fordítóval és macival alszom
http://darthasylum.blog.hu/
   
TPG - Tag | 3402 hsz       Online status #125224   2009.12.31 17:10 GMT+1 óra  
Idézet
Asylum :
Ennél azért kicsit több...az is benne van, hogy amikor ELVILEG valami rosszat csinálna akkor se történjen katasztrófa. Erre ki van már dolgozva egy modell, sőt a helyességbizonyitásra is, csak azt a részt pont nem tanultam meg XD


Nah nálunk ilyenről nem volt szó, az az opció nem létezett hogy a vizsgált program elvileg rosszat csinál. Tantóbácsi nekiállt matematikailag levezetni hogy a kód helyes-e, ha nem akkor nem, ha igen akkor meg nem kellett azzal foglalkozni hogy rosszat csinálhat, mert pont azt látta be hogy ilyen nem következhet be, sehogy és soha. Erre volt valami konkrét matematikai módszer, de csesztem anno én is megtanulni.
Reality is almost always wrong. - House

   
Asylum - Törzstag | 5471 hsz       Online status #125223   2009.12.31 17:07 GMT+1 óra  
Van egy ilyen fogalom, hogy absztrakció. Ez arról szól, hogy a lényegtelen részeket elhagyod, és csak a lényegeseket tartod meg. Ez hogy ennyi nap mulva be fog ez következni lényegtelen mert például biztos lesz addig áramszünet. Vagy lehal a szerver, vagy akármi, ezért ezt nem kell hozzávenni a modellhez.
Ha meg mégis akkor modnjuk havonta egy szerver reset és kész.
C++ fordítóval és macival alszom
http://darthasylum.blog.hu/
   
bit.0x8000 - Törzstag | 574 hsz       Online status #125221   2009.12.31 17:04 GMT+1 óra  
Idézet
Asylum :
A forditó pedig önmagában nem tudja bizonyítani a program helyességét, hogyan is tudná... Helyesség alatt nem a szintaktikai helyességet értik, hanem a szemantikait...az meg eléggé más tészta.



Ebben mondjuk egyetértek veled, viszont a szemantika meg lehet környezetfüggő.
Egy egyszerű példa: vegyünk egy időzítőt, ami a program indulása óta eltelt milliszekundumokat adja vissza 64 bites előjel nélküli egészként. Ekkor (ha nem ellenőrzöm ezt az értéket) 213503982334,60129184 nap múlva (ha jól számoltam) be fog következni egy túlcsordulás. Ez egy elvi hiba - de hány felhasználót fog érinteni a gyakorlatban?
   
Asylum - Törzstag | 5471 hsz       Online status #125220   2009.12.31 17:03 GMT+1 óra  
Ennél azért kicsit több...az is benne van, hogy amikor ELVILEG valami rosszat csinálna akkor se történjen katasztrófa. Erre ki van már dolgozva egy modell, sőt a helyességbizonyitásra is, csak azt a részt pont nem tanultam meg XD
C++ fordítóval és macival alszom
http://darthasylum.blog.hu/
   
TPG - Tag | 3402 hsz       Online status #125218   2009.12.31 16:52 GMT+1 óra  
Idézet
bit.0x8000 :
Idézet
Asylum :
Az az érdekes, hogy egy program helyességét hogyan lehet bizonyitani.



Van erre egy kézenfekvő eszköz, úgy hívják: fordító. Persze az már nyelvfüggő, hogy mi fog lefordulni: Assembly-ben mindenféle baromság lefordul, viszont van olyan nyelv is ami nagyon "finnyás" (talán az Ada, de erre nem emlékszem pontosan, valaki javítsa plz.).


A fordító nem bizonyítja be hogy a program helyes, csak annyit bizonyít hogy szintaktikailag helyes ha le tudja fordítani. De a szemantikai helyességre nézve nem garantál semmit, márpedig ez is feltétele a program helyességének. (Ha jól rémlik akkor valahogy úgy volt ez definiálva hogy a program jó inputokra jó outputokat állítson elő, és a futása fejeződjön be valamikor.)

Szerk: Asy megelőzött.
Reality is almost always wrong. - House

   
Asylum - Törzstag | 5471 hsz       Online status #125217   2009.12.31 16:45 GMT+1 óra  
Adában vannak extrém dolgok igen. pl. két különbözö méretü tömb nem adható értékül egymásnak, stb. Az egy nagyon erösen tipusos nyelv vagy nemtom hogy mondjam
Azért ez a néhány if még mindig gyorsabb mint egy managed kód.

A forditó pedig önmagában nem tudja bizonyítani a program helyességét, hogyan is tudná... Helyesség alatt nem a szintaktikai helyességet értik, hanem a szemantikait...az meg eléggé más tészta.
C++ fordítóval és macival alszom
http://darthasylum.blog.hu/
   
bit.0x8000 - Törzstag | 574 hsz       Online status #125215   2009.12.31 16:32 GMT+1 óra  
Idézet
Asylum :
Vannak esetek amikor bizony a hülyebiztosság előbbrevaló.



És ilyenkor kell bizony inkább a managed környezeteket használni.

Idézet
Asylum :
Az az érdekes, hogy egy program helyességét hogyan lehet bizonyitani.



Van erre egy kézenfekvő eszköz, úgy hívják: fordító. Persze az már nyelvfüggő, hogy mi fog lefordulni: Assembly-ben mindenféle baromság lefordul, viszont van olyan nyelv is ami nagyon "finnyás" (talán az Ada, de erre nem emlékszem pontosan, valaki javítsa plz.).
   
svn - Tag | 92 hsz       Online status #125213   2009.12.31 15:52 GMT+1 óra  
Milyen esetekre gondolsz? Per pillanat most c++-ról van szó. Milyen olyan c++ kóder van aki véletlen saját magával tesz egyelővé objektumot?

Itt persze a tiszta kódról van szó, ha valamilyen tárolóban rohangálsz, vagy mapben, nodegraphban, ott nyilván vannak ilyen ellenőrzések, de az már nem az az eset mikor véletlen elírsz valamit.

Amúgy amire te gondolsz, arra talán a unit testing alkalmas.

De őszintén, ha valaki pontatlanul kódol, nehogymár az API író felelőssége legyen a hibaellenőrzés. (maya, mental ray olyan értelmezhetetlen hibákat dob, hogy azt szép nézni... persze nulla exceptionnal mert a sebesség az első... és annyit látsz, hogy az egész programod megszűnik létezni, de még sorolhatnám tovább... de uez igaz gl-re, cl-re, dx-re stb...)
bőgtem bazdmeg, mint carlos szokott amikor nem kap rózsaszín nyalókát a boltban... by Admiral Pecek
   
Asylum - Törzstag | 5471 hsz       Online status #125212   2009.12.31 15:34 GMT+1 óra  
Vannak esetek amikor bizony a hülyebiztosság előbbrevaló.
Persze ez konkrétan nem az volt (vertex stb.).

Az az érdekes, hogy egy program helyességét hogyan lehet bizonyitani. Gondolom c++ ban is vannak erre eszközök, más nyelvekben nyelvi szinten is van.
C++ fordítóval és macival alszom
http://darthasylum.blog.hu/
   
svn - Tag | 92 hsz       Online status #125211   2009.12.31 15:33 GMT+1 óra  
Jó de érted mi a bajom vele. Véletlen ottmarad egy kódrész . Szal az már a programozó felelőssége.

El lehet dönteni, hogy hülyebiztos vagy hatékony kódot írunk. Ha már c++ akkor az utóbbi .
bőgtem bazdmeg, mint carlos szokott amikor nem kap rózsaszín nyalókát a boltban... by Admiral Pecek
   
Asylum - Törzstag | 5471 hsz       Online status #125204   2009.12.31 14:43 GMT+1 óra  
Írtam egy példát, lehet hogy elsö ránézésre igazol engem, kicsit már álmos vagyok. Azért nézd meg. Nyilván tipikusan olyan kód amilyet egy normális programozó nem ír (amennyiben észreveszi a hibáját).

Kód:
class Banan
{
public:
    int b;

    Banan() {}
    Banan(const Banan& other) { b = other.b; }
};

class Alma
{
public:
    Banan* banan;

    Alma() { banan = NULL; }
    Alma(Banan& banan) { this->banan = &banan; }

    Alma& operator=(const Alma& other)
    {
        banan = new Banan(*other.banan);
        return *this;
    }
};

int main()
{
    Banan b;
    b.b = 5;

    Alma a(b), c;

    std::cout << a.banan->b << "\n"; // 5; ok
    b.b = 10;
    std::cout << a.banan->b << "\n"; // 10; ok a b-re mutat

    c = a; // uj másolat készül
    a = a; // !!! itt most látni, de ha nem látod?...
    b.b = 20;

    std::cout << c.banan->b << "\n"; // 10; ok uj másolat lett
    std::cout << a.banan->b << "\n"; // 10; NEM ok! már nem b-re mutat

    system("pause");
    return 0;
}
C++ fordítóval és macival alszom
http://darthasylum.blog.hu/
   
svn - Tag | 92 hsz       Online status #125203   2009.12.31 14:25 GMT+1 óra  
Nem idegesít.
bőgtem bazdmeg, mint carlos szokott amikor nem kap rózsaszín nyalókát a boltban... by Admiral Pecek
   
Asylum - Törzstag | 5471 hsz       Online status #125202   2009.12.31 14:12 GMT+1 óra  
Tudom, csak azért irom, mert tudom, hogy idegesit
A minőséget meg sok tényező befolyásolja...

szerk.: most hogy kérdezed...télleg ki tanitotta nekem ezt a faszságot...általában énis a hatékonyságot tartom szem előtt. Valószínüleg ez egy ilyen beidegzödés, de azért nem akarom lehülyézni azt aki tanitotta. Valószinüleg meg tudná indokolni.

Ezt a hozzászólást Asylum módosította (2009.12.31 14:23 GMT+1 óra, ---)
C++ fordítóval és macival alszom
http://darthasylum.blog.hu/
   
svn - Tag | 92 hsz       Online status #125201   2009.12.31 14:07 GMT+1 óra  
Debug : Ritkán van rá szükségem. Jó minőségű kódot írok. De ha kell használom. Csak sokszor olyan környezetben dolgozom ahol nincs rá lehetőség, így kénytelen vagyok atombiztos kódot írni elsőre is.

Nyuszkó : hanyagold az ilyen stílust, nem illik hozzád. (és nem is illik ehez a fórumhoz, úgyhogy tartsuk normális keretek között a társalgást)

Tanulni : Stroustrup c++ referenciájából tanultam kódolni. (plusz tervezési minták, kódolási szabályok, pár ilyen alapmű)
bőgtem bazdmeg, mint carlos szokott amikor nem kap rózsaszín nyalókát a boltban... by Admiral Pecek
   
Asylum - Törzstag | 5471 hsz       Online status #125200   2009.12.31 13:59 GMT+1 óra  
Engem senki Ez a különbség köztünk.
Te talán nem szoktál debugolni nyuszkó?
C++ fordítóval és macival alszom
http://darthasylum.blog.hu/
   
svn - Tag | 92 hsz       Online status #125199   2009.12.31 13:57 GMT+1 óra  
Idézet
Asylum :
Mellesleg az is egy szempont, hogy ha nem vektorokról van szó, hanem valami extrémebb objektumról aminél igen költséges a másolás akkor már bőven megéri egy összehasonlitást beleiktatni.



Debug mód és futási költség? Ki tanított téged programozni? Ebből a mondatból eléggé az következik, hogy te release-ben is nézed az egyenlőséget.

(A többieknek, debug módban nem érdekel minket a sebesség.)
bőgtem bazdmeg, mint carlos szokott amikor nem kap rózsaszín nyalókát a boltban... by Admiral Pecek
   
Asylum - Törzstag | 5471 hsz       Online status #125198   2009.12.31 13:55 GMT+1 óra  
Mondtam: #ifdef _BEDUG

"felesleges faszverés" Ez is bekerül az "elméleti faszverés" mellé.
C++ fordítóval és macival alszom
http://darthasylum.blog.hu/
   
Asylum - Törzstag | 5471 hsz       Online status #125197   2009.12.31 13:55 GMT+1 óra  
Mondtam: #ifdef _BEDUG

"felesleges faszverés" Ez is bekerül az "elméleti faszverés" mellé.
C++ fordítóval és macival alszom
http://darthasylum.blog.hu/
   
svn - Tag | 92 hsz       Online status #125196   2009.12.31 13:51 GMT+1 óra  
Nem, ezt úgy hívják : felesleges faszverés.

Egy millió esetben van egy extra másolást. Ehelyett mindig csinálsz ellenőrzést, hogy egy esetben gyorsabb legyen. Zseniális! (értsd normálisan működő program esetén. Lehet ez a te életedből maradt ki)
bőgtem bazdmeg, mint carlos szokott amikor nem kap rózsaszín nyalókát a boltban... by Admiral Pecek
   
Asylum - Törzstag | 5471 hsz       Online status #125195   2009.12.31 13:43 GMT+1 óra  
A tiedben lehet, másba nem biztos. Nem feltétlenül csak matekos fvekre kell gondolni.
Ezt egyébként úgy hivják, hogy programhelyesség, nyilván ez neked kimaradt az életedből (én viszont direkt szarom le ),

Mellesleg az is egy szempont, hogy ha nem vektorokról van szó, hanem valami extrémebb objektumról aminél igen költséges a másolás akkor már bőven megéri egy összehasonlitást beleiktatni.
C++ fordítóval és macival alszom
http://darthasylum.blog.hu/
   
Frissebbek | Korábbi postok
[1] [2] [3] [4] [5] [6] [7] [8] [9] [10] [15] [20] [25] [30] [35] [40] [45] [50] [55] > 60 < [65] [70] [75] [80] [85] [90] [95] [100] [105] [110] [115] [120] [125] [130] [135] [140] [142]