Windows Picture and Fax Viewer

Megosztok veletek valami rettentő hasznos információt. Az utóbbi 1-2 hónapban akármilyen képet nyitottam meg, sokáig kellett várnom. Úgy értem, olyan "csinálok addig valamit" sokáig. Próbáltam ráfogni a vírusölőre, de nem sikerült, mert azt már kiheréltem annyira, amennyire a gépem tulajdonosa engedte, és nem csinál semmit azóta. Jut eszembe, mondtam már, mennyire szeretek úgy "rendszergazda" lenni a gépemen, hogy a gép nem enged nekem megtenni dolgokat, mert nincs hozzá jogom? Na, egy napra egy nyafogás elég, úgyhogy vissza a képekhez...

Rövid guglizás: [window picture and fax viewer slow explorer hangs]

Abból is látszik, hogy hány felhasználót érint a probléma, hogy rögtön a második találat egy olyan site-ra mutat, amelyik valami rosszindulatú dolgot akar telepíteni a gépedre, ha már úgyis van valami problémád vele. No, és akkor a megoldás...

WARNING! SPOILER!

...Ha a munkaasztalodon van olyan parancsikon, ami jelenleg nem elérhető hálózati meghajtóra hivatkozik, akkor a képnézegető kissé eltöpreng, mielőtt megjeleníti a képedet, bárhol is van a fájlrendszerben a kép, és biztos ami tuti alapon az Explorer munkafolyamatát is megakasztja addig. És még nem is viccelek.

Alkönyvtárat készítettem az asztalon a hálózatra hivatkozó parancsikonoknak és belehúztam őket egy laza egérmozdulattal. Megnyitottam a kedvenc képemet és azonnal megjelent.

Most segítsetek nekem eldönteni, hogy végülis örüljek-e.

Tagek:
 
Utoljára módosította Wigy 2009.VIII.26 16:36-n; 1 hozzászólás
Bejegyzés módosítása | PermaLink
Szavazás letiltva.

Overloading operator =

Egyszer már próbáltam az ApocalypseKÖZÖS lakóitól segítséget kérni egy problémához, és akkor sikerrel jártam. Szóval most megpróbálom még egyszer.

Egy C++ programot írok, amiben mindenféle komplex számokkal számolok, és ehhez – többek között – egy külső függvénykönyvtár (nevezzük C-LAPACKnak) függvényeit és definícióit használom. A Lapackban létezik egy típusdefiníció a komplex számokra (nagyon egyszerű: egy struct, aminek van egy valós és egy képzetes tagja, mindkettő lebegőpontos szám), nyilván nekem is célszerű ezt használnom. Viszont a kód olvashatósága érdekében szeretném, ha a fordító érteni tudná a c = d jellegű rövidítéseket (ahol c egy ilyen komplex szám, d meg egy lebegőpontos kifejezés), vagyis, hogy ne kelljen se mindig kiírni, hogy c.r = d; c.i = 0, se ne kelljen erre külön valami c = assign_double(d); jellegű utasítást/makrót csinálni.

Ugyanez persze felmerült a szokásos négy alapműveletre is, ott sikerült is megcsinálnom az operator overloadingot pusztán a megfelelő eljárások deklarálásával. Azonban az operator =-t valamiért nem lehet "csak úgy" overloadingolni, mert olyankor egy error: '__CLPK_doublecomplex& operator=(__CLPK_doublecomplex&, double)' must be a nonstatic member function nevű hibát kapok.

A gugli erre azt írta, hogy ennek az a mélyebb oka, hogy az értékadás operátort csakis az osztálydefinícióban lehet megtenni valamiért. Ennek egyrészt vannak egész érthető okai is, másrészt viszont az is nyilvánvaló, hogy miért nem akarok belepiszkálni egy külső függvénykönyvtárba. (Arról nem is beszélve, hogy maga a Lapack nem C++, hanem szimpla C-kód – pontosabban a Lapack FORTRANban íródott és a C-Lapack egy wrapper hozzá –, vagyis nincsenek benne osztályok. Persze nyilván a structok ilyen értelemben osztályként is működnek, de akkor sem akarnék belenyúlni a Lapack headerekbe...)

Nem tudna valaki javasolni nekem valamit, hogy anélkül, hogy bele kéne piszkítanom a Lapack headerekbe, hogyan tudnám mégis megcsinálni, hogy a c = d jellegű értékadás működjön?

Tagek:
 
Utoljára módosította SAdam 2009.VIII.14 19:10-n; 4 hozzászólás
Bejegyzés módosítása | PermaLink
Szavazás letiltva.