- eBay-es kütyük kis pénzért
- sellerbuyer: Te tudod, mi mennyit fogyaszt az otthonodban?
- sziku69: Fűzzük össze a szavakat :)
- Sub-ZeRo: Euro Truck Simulator 2 & American Truck Simulator 1 (esetleg 2 majd, ha lesz) :)
- Magga: PLEX: multimédia az egész lakásban
- Luck Dragon: Asszociációs játék. :)
- azbest: Type-c 2x HDMI, USB3, PD töltés 4in1 dongle
- sellerbuyer: Milyen laptopot vegyek? Segítek: semmilyet!
- sh4d0w: Én és a számítógép
- Lalikiraly: Sencor SMC BS30 aktív hangfalszett bemutató
Új hozzászólás Aktív témák
-
Gyomman
aktív tag
válasz
Jester01 #1073 üzenetére
Igen, rájöttem, h az segített volna... Közbe rájöttem magamtól, hogy a const char* típusú fájlra nem akart működni (azt hittem pedig, h azt tudja kezelni, de mégse), így specializáltam a függvényt (meg átírtam végtelen ciklusból
) és most már működni látszik, köszönöm az útmutatásokat!
-
Gyomman
aktív tag
válasz
Sk8erPeter #1070 üzenetére
Tényleg nagyon nem láthatok valamit, mert azon kívül, hogy elnéztem, h cím szerint adjam át a tempet, nincs változás a kritikus részben, a kiegészített rész meg (és mégegyszer elnézést, h nem másoltam hozzá tesztprogramot és osztályt) ugyanaz, mint énnálam egyébként azzal az egy különbséggel, h nálam friend az operator>>.
template<typename G>
class F_file{
unsigned length;
FILE* file;
char* nev;
char* utvonal;
public:
..
template <typename E> friend void operator>>(istream&, F_file<E>&);
.. -
Gyomman
aktív tag
válasz
Jester01 #1066 üzenetére
Szia!
Elnézést, ha keveset másoltam be a programomból, de egész jól reprodukáltad, csak annyi a különbség, hogy nekem friend az operator>>, egyébként ugyanez (még pár plusz tagfüggvénnyel megspékelve).
Fura, h ennek ellenére amit te csináltál az lefordul, az enyém meg mégse.Természetesen ügyeltem arra, hogy a megadott bemeneti stream és elem párosra létezzen operator>>
Én ugyanúgy olyan típusokkal dolgozom, amire létezik az operator>>, csak alapból azt írja ki mégis hibának, hogy binary '>>' : no operator found which takes a left-hand operand of type 'std::istream' (or there is no acceptable conversion).Vagy mégiscsak elnézek valamit.
Azt akarnám am csinálni (ezek szerint rosszul, de arra majd rájövök, csak egyelőre ezen a problémán essek túl), hogy egy streamről jön egy adatfolyam hossza, majd utána maga az adat és a hosszát beolvasom a fájlhosszba, az adatot pedig utána a fájlba.
-
Gyomman
aktív tag
válasz
Jester01 #1063 üzenetére
template<typename G>
void operator>>(istream& in, F_file<G>& F)
{
fclose(F.file);
char* ttemp=new char[strlen(F.nev)+strlen(F.utvonal)+5];
strcpy(ttemp,F.utvonal);
strcat(ttemp,F.nev);
strcat(ttemp,".dat");
F.file=fopen(ttemp,"a");
G temp;
int len;
(in>>len).ignore(1); //szóközt eldobjuk
F.length+=len; //hosszt megnöveljük
while((in>>temp).ignore(1))
{
fwrite(temp,sizeof(G),1,F.file);
}
delete [] ttemp;
}Itt lenne szegény kód. Az eleje az csak annyi, h megnyitom a fájlt (kicsit bonyolultan van megoldva igaz), aztán az in>>temp résznél már szól, h neki az nem működik. Ha az ignore-on kívül teszem, akkor is szól, nem tudom hol lehet a baj.
-
Gyomman
aktív tag
Sziasztok!
Az lenne a helyzet, hogy lenne egy megoldatlan template-s problémám. Ugyanis az lenne a feladat, hogy input streamről beolvassak egy generikus fájlba adatokat. Viszont nem tudok olyan függvényt, amely erre jó lenne, mivel az in.read char*-ot vár (és nem bármilyen generikus adatot), az in>> operátora meg megint csak nem akarja az igazságot. Valakinek van valamit ötlete?
Ú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!
- LG UltraGear 27GP850-B GAMING IPS Monitor! 2560x1440 / 165Hz / 1ms / FreeSync / G-Sync!
- MSI RTX 3080Ti Ventus 3X 12G OC + vízhűtés
- LG UltraGear 45GS95QE-B OELD Monitor! 3440x1440 / 240Hz / 0.03ms / G-Sync / FreeSync! BeszámítOK
- Gyári dobozos Apple iphone SE (A1723) fillérekért!!!
- AMD Ryzen 5 5500 - Új, 3 év garancia - Eladó!
- BESZÁMÍTÁS! Apple Macbook Pro 16" 2019 i9 64GB 1TB 5500M 8GB garanciával hibátlan működéssel
- GYÖNYÖRŰ iPhone 14 Pro 256GB Deep Purple -1 ÉV GARANCIA - Kártyafüggetlen, MS3352
- iPhone 11 Pro Max 256GB Midnight Green -1 ÉV GARANCIA - Kártyafüggetlen, MS3261, 100% Akkumulátor
- BESZÁMÍTÁS! 4TB Western Digital RED Pro SATA HDD meghajtó garanciával hibátlan működéssel
- ÁRGARANCIA!Épített KomPhone i5 13400F 16/32/64GB RAM RTX 5070 12GB GAMER PC termékbeszámítással
Állásajánlatok
Cég: PCMENTOR SZERVIZ KFT.
Város: Budapest
Cég: CAMERA-PRO Hungary Kft.
Város: Budapest