Új hozzászólás Aktív témák
-
h1ght3chzor
őstag
Bocsi, lehet hogy ipad topikba kéne írnom, de ide is leírom hátha...
Ipad-ra tud vki C++ fordító programot?
-
dany27
őstag
válasz
WonderCSabo #1497 üzenetére
Köszi! Megpróbálom és majd jelzek, hogy hogyan sikerült!
-
WonderCSabo
félisten
Iterátort kell hozzá írnod.
Definiálsz egy belső, publikus Iterator osztályt, aminek a friend class-a a treed. Ezek után pedig meg kell írnod a szokásos iterátor műveleteket:
bool operator!=(const Iterator& it) const;
bool operator==(const Iterator& it) const;
Iterator& operator++();
Iterator operator++(int);
Iterator& operator--();
Iterator operator--(int);
T& operator*() const;Az Iteratornak pedig legyen egy mezője, ami a treed egy nodejára mutat.
-
dany27
őstag
Sziasztok!
Hogyan tudok egy generikus bináris fát bejárni iterátor segítségével??
Készítettem egy osztályt a fának ami így néz ki(tagfüggvény még szándékosan hiányoznak innét):
#ifndef BINFA_H_INCLUDED
#define BINFA_H_INCLUDED
template<class T> class tree
{
T data;
tree* root
tree* left;
tree* right;
public:
tree(){}
void inord();
void preord();
void postord();
void torol();
~tree(){}
}
#endif // BINFA_H_INCLUDEDHogyan kellene modosítanom hogy iterátorral tudjam bejárni?
Előre is köszönöm a segítséget. -
Des1gnR
őstag
válasz
Des1gnR #1493 üzenetére
Közben rájöttem, hogy valószínűleg jó az algoritmus, előbb van a baj.
Találkoztatok már olyannal, hogy egy tömb i-edik elemére hivatkozva minden szám szépen kiíródik viszont az i+1-re hivatkozva csak szemét(-858993460) íródik ki
Más tömbnél is ugyan így hivatkozok és ott működik.#1495: de ha túl is indexelem akkor csak azoknak kéne ezt az értéket kapniuk amit túl indexeltem nem? Egyébként nincs különbség a két tömb között méretben és adatok számában, és a másikkal nincs ilyen gond.
-
Des1gnR
őstag
Ismét megakadtam
vhogy éreztem, hogy még vissza fogok látogatni
A feladat nagy részét meg tudtam csinálni és ezáltal kaptam egy ilyen textfájlt:
(ezeket az értékeket írom a fájlba)
részlet:
óra | perc | mp14 24 24
14 25 53
14 25 15
14 27 27
14 27 10
14 27 2
14 28 41
14 29 42Csakhogy ebbe vannak olyanok, hogy a 27. percnél a 3. sorban lévő mp érték kisebb a 2. és 1. értekénél. Nekem csak a legkisebb értékre azaz a 14 27 2-re lenne szükségem, azaz csak azt kellene beleírnom a txt-be.
Próbáltam ezzel az algoritmussal, de nem sikerültif(seged11[i]==seged11[i+1] && perc==perc_seged)
{
if (mp>mp_seged)
{
myfile2<<seged11[i]<<" "<<perc<<" "<<mp_seged<<endl;
}
else
{
myfile2<<seged11[i]<<" "<<perc<<" "<<mp<<endl;
}
}
else
{
myfile2<<seged11[i]<<" "<<perc<<" "<<mp<<endl;
}A seged11 tömböt azaz az órát hasonlítom a következő sor órájával és a percet a következő sor percével, ha az igaz és az első sor mp-e nagyobb mint a következő sor mp-e akkor a következő sor mp-ét íratom bele ha nem akkor a "normál" sor mp-ét, ha pedig az óra és a perc nem egyenlő a következő sorral akkor beírja simán az adatot.
Huh remélem érthető voltam és tudtok segíteni (ismét
)
-
Des1gnR
őstag
válasz
WonderCSabo #1491 üzenetére
aztamindenit
Köszönöm, nem semmi vagy
Már csak 1 feladat van, remélem azon át tudom rágni magam, ha pedig nem akkor úgy is jövök
-
WonderCSabo
félisten
válasz
Des1gnR #1487 üzenetére
sort - ot használva így tudod rendezni:
#include <iostream>
#include <vector>
#include <algorithm>
using namespace std;
struct mystruct
{
mystruct(int pa, int pb, int pc, int pd, char pe) : a(pa), b(pb), c(pc), d(pd), e(pe) {}
int a, b, c, d;
char e;
};
struct mysortbyfourth // ez a funktor lesz az osszehasonlito
{
bool operator() (const mystruct& first, const mystruct& second)
{
return first.d < second.d;
}
};
int main()
{
vector<mystruct> v;
v.push_back(mystruct(7, 23, 31, 164, 'F')); //nyilvan Neked a faljbol kell beoltened az
v.push_back(mystruct(7, 23, 33, 167, 'F')); //elemeket, en csak beszurtam 3 peldat
v.push_back(mystruct(7, 24, 11, 121, 'A'));
mysortbyfourth mysort;
sort (v.begin(), v.end(), mysort); //az elejetol a vegeig, a definialt osszehasonlitas szerint rendezi
return 0;
} -
Des1gnR
őstag
válasz
WonderCSabo #1486 üzenetére
Azt hogy oldanátok meg, hogy az alábbi sorokat a 4. oszlop szerint sorba tudjam rendezni?
7 23 31 164 F
7 23 33 167 F
7 24 11 121 A
7 24 56 142 A
7 25 29 98 F
7 26 24 105 F
7 26 27 113 F
7 26 29 159 A
7 26 34 126 F
7 27 27 108 A
7 27 28 138 F
7 28 18 41 F
7 29 18 123 FA sort-tal próbálgattam így-úgy feldarabolva a tömböt rendezni, de nem akar összejönni.
-
WonderCSabo
félisten
Jajjjjjjjj. A legtöbb programozási nyelv nullától indexel, ezt nagyon jól jegyezzétek meg, különben rengeteg overflow errort fogtok kapni.
mystring[mystring.length() -1] az uccsó karakter C++ string esetén.
Des1gnR problémáját én meg úgy oldanám meg, hogy beolvasom a sorokat stringek vectorába, és aztán megszámolom az előbb említett módszerrel az uccsó helyen lévő 'A' - kat és 'F' - eket.
-
modder
aktív tag
válasz
Des1gnR #1480 üzenetére
Miért próbálod meg egy char* tömbbe átkopizni a buffered egyik sorát?
egyébként az valszeg működik. ami nem működik az a while feltételed. a while-nak bennmaradási feltételre van szüksége. csinálja amíg igazwhile(a(i)=='A' || a(i)=='F'); itt már kapásból ki fog lépni, mert ez hamis lesz.
próbáld ki ezt: while(a(i)!='A' && a(i)!='F');
Ha pedig meg akarod könnyíteni az életed, akkor:
int n,i=0;
cout<<"Melyik sorban?"<<endl;
cin>>n;
i = olv_buffer2[n].length() - 1;
while( olv_buffer2[n].at(i) != 'A' && olv_buffer2[n].at(i) != 'F' ){
// hatulrol keresunk, mert az utcso karakter, de akar meg lehet whitespace is utana
i--;
}
cout<<olv_buffer2[n]<<endl;
cout<<olv_buffer2[n].at(i)<<endl; -
modder
aktív tag
válasz
Des1gnR #1478 üzenetére
Hali
Ez mi?
do{
i++;
}while(olv_buffer[n,i]=='A' || olv_buffer[n,i]=='F');
cout << "A karaket: "<<olv_buffer[n,i]<<endl;Nem emlékszem, hogy valaha is ilyen módon kellett volna címezni tömböt C-ben.
Plusz miért lenne az olv_buffer egy többdimenziós tömb?Amúgy ahogy ezt előbb is írták kb. ilyesmire: olv_buffer[ olv_buffer.length()-1 ] -re vizsgálj.
-
Des1gnR
őstag
Közben rájöttem, hogy elég nagy hülyeséget próbáltam, mert így a olv_buffer stringem tartalma üres, de csináltam egy olv_buffer2[] string tömböt és utána azon végigszaladok ezzel
char *a, szóval most így néz ki a kód:int n,i=0;
cout<<"Melyik sorban?"<<endl;
cin>>n;
char *a=new char[olv_buffer2[n].size()+1];
a[olv_buffer2[n].size()]=0;
memcpy(a,olv_buffer2[n].c_str(),olv_buffer2[n].size());
do{
i++;
}while(a[i]=='A' || a[i]=='F');
cout<<olv_buffer2[n]<<endl;
cout<<a[i]<<endl;De ezt már tényleg nem értem miért nem működik
nagyon beblokkolt az agyam
-
Des1gnR
őstag
válasz
WonderCSabo #1477 üzenetére
Köszi jó tipp volt, bár nem hiszem hogy rendeltetésszerűen használtam a vectort, de a feladatot megoldottam
Más probléma, más feladat:
Van egy txt-m ismét amit beolvasok egy stringbe:A txt tartalma:
7 21 58 69 F
7 22 4 117 F
7 22 39 155 A
7 23 11 99 A
7 23 31 164 F
7 23 33 167 F
7 24 11 121 A
7 24 56 142 A
7 25 29 98 Fstring olv_buffer;
ifstream be (f_nev);
if(be.is_open())
{
while(!be.eof())
{
getline(be, olv_buffer);
cout<<olv_buffer<<endl;
}
}Szeretném megtudni hogy egy adott sorban a végső karakter A vagy F majd kiíratni:
Így próbálkoztam:int n,i=5;
cout<<"Melyik sorban?"<<endl;
cin>>n;
do{
i++;
}while(olv_buffer[n,i]=='A' || olv_buffer[n,i]=='F');
cout << "A karaket: "<<olv_buffer[n,i]<<endl;Erre string subscript out of range hibát kapok, mi lehet a baj?
-
Des1gnR
őstag
Üdv mindenki!
Kaptam egy feladatot amit c++ konzolos környezetben kell megoldanom.
Az lenne a lényeg, hogy van egy txt fájlom aminek a tartalma ez:7 4 0 7 12 18
565866886
Az első sor az a hívás kezdete (óra, perc, mp) majd a hívás vége (óra, perc, mp).
A köv sor a telefonszám.
Ez még ismétlődik más adatokkal és az a feladat, hogy ezt a txt-t beolvassam majd az órával és perccel számolgassak.
Pl meg kell határozni, hogy 1 számot hány percig hívott az illető.Eddig így állok vele:
ifstream SecondFile ("HIVASOK.txt");
while(!SecondFile.eof())
{
char c;
SecondFile.get(c);
cout << c;
}
SecondFile.close();Nem tudom, hogy milyen irányba menjek tovább.
-
n00n
őstag
válasz
WonderCSabo #1342 üzenetére
Pár hozzászólással később említed, hogy van ebből Objektumorientált feladatsor. Belinkelnéd azt is?
-
kispx
addikt
Melyik könyvtár/technológiát szeretnéd használni?
Win32 API
Qt könyvtárt is lehet lehet visual studio alatt használni
Tudtommal az MFC is erre való.
Meg még a Winforms ami még eszembe jutott. -
Davs
tag
Hali!
Melyik Visual C++ tutorialt ajanlanatok egy kezdonek? Angol johet, c++ konzol ismereteim vannak, viszont GUI-ban abszolut nincs es a terv ezen valtoztatniszoval windows ablakos programokat szeretnek megtanulni "gyartani"
-
doc
nagyúr
az aimbotos temat MOST tessek abbahagyni
kezdjuk ott, hogy ennek baromira semmi koze a C++ -hoz... -
n00n
őstag
válasz
Lavidaloka #1460 üzenetére
Remélem nem is sikerül. Tele van úgyis az összes játék az ilyen alattomos cheaterekkel.
-
Gyuri16
senior tag
válasz
Lavidaloka #1462 üzenetére
ezt a reszletet googleba irva talalt egy nagyobb darab kodot is, talan azt le lehet forditani megfelelo konyvtarakkal.. viszont amit kerdezni akarok: miert hasznalsz aimbotot?
-
Lavidaloka
aktív tag
válasz
h1ght3chzor #1461 üzenetére
Igen ...ingyenes.
Már több mint fél éve használtam csak most ez a game frisítés miatt nem megy.
Idézném:PHP Code:
class CWeapon
{
public:
char unknown0[36]; //0x0000
CTemplate* weapon_template; //0x0024
char unknown40[460]; //0x0028
CDeviation* weapon_deviation; //0x01F4
char unknown504[4]; //0x01F8
CBreathingComponent* weapon_breathing; //0x01FC
};//Size=0x0200(512)with this
PHP Code:
class CWeapon
{
public:
char unknown0[36]; //0x0000
CTemplate* weapon_template; //0x0024
char unknown40[460]; //0x0028
CDeviation* weapon_deviation; //0x01F4
char unknown504[260]; //0x02F8
CBreathingComponent* weapon_breathing; //0x02FC
};//Size=0x0200(512) -
h1ght3chzor
őstag
válasz
Lavidaloka #1460 üzenetére
Regisztráció nélkül tudnád használni?
-
Jester01
veterán
válasz
Lavidaloka #1458 üzenetére
Ha nincs meg a forráskód akkor csak reverse engineering módszerekkel lehet.
-
Lavidaloka
aktív tag
HELP PLS!!!
C++ban írt dll file-t hogy lehet szerkeszteni?
Csak egy sort kellene átírnom ..de a C++ csak a könyvtárokat nyitja meg.
Esetleg vmi más progi?
Vagy vki írja már át nekem pls...THX -
n00n
őstag
Sziasztok!
Lenne egy problémám egy beadandóval, már 2 napja írom át folyamtosan de sehogy sem jó. Segítséget szeretnék kérni. Viszont nem szabad bemásolni a kódot semmilyen fórumra. Lenne olyan aki ránézne nekem privátban? Nem megoldást kérek, hanem a 99%-ban működő kódomban azt az egy hibát felfedezni.
-
buherton
őstag
válasz
proci985 #1444 üzenetére
Pascal még nem halt ki. Mikrokontroller programozók még használják, de csak az amatőrök és azoknak is egy kisebb része. C viszont nagyon is él és virul ezen a területen. Sőt ezen a területen szinte egyed uralkodó. C++ szintén kezd bejönni, ahogy egyre bonyolultabb és gyorsabb eszközök lesznek.
-
-
doc
nagyúr
válasz
Jhonny06 #1451 üzenetére
alapszabaly hogy lebegopontos szamokra NEM vizsgalunk egyenloseget
mivel a szamabrazolas miatt nem biztos hogy pontosan ugyanazt le tudja tarolni
mivel a ket tipus kulonbozo, igy pont emiatt nem lesznek egyenloekugy szokas osszehasonlitani oket, hogy a kulonbseguket egy kuszobszammal hasonlitod, pl:
if (abs(floatnum - doublenum) < 0.00001)
printf("Egyenloek\n");
else
printf("Nem azok\n"); -
Jhonny06
veterán
Egy gyakornoki C++ feladatlapon volt egy olyan kódsor, hogy létrehoztak egy float-ot 1.1-es értékkel és egy double-t is ugyanazzal. Utána if-else, miszerint "x"-et ír ki (most csak mondtam valamit), ha egyenlőek és "y"-t, ha nem. Tudtam, hogy az utóbbi íródik ki (azaz elvileg nem egyenlőek), de nem tudtam kifejteni, hogy miért. Ötlet?
-
ArchElf
addikt
válasz
h1ght3chzor #1449 üzenetére
Nem könyvből csak gyomorból:
Lefoglalsz egy nagy memóriaterületet és csinálsz egy listát a még szabad területekről.
Foglaláskor végigszaladsz az egész listán és megnézed, hogy mi az a memóriaszegmens, ami a szükségsnél nagyobbak közül a legkisebb. Ennek az elejére kell berakni a foglalást és ennek megfelelően frissíteni a listát.AE
-
h1ght3chzor
őstag
Sziasztok!
Vki tudna help?
Dinamikus memóriát kellene csinálnom best fit stratégiával, esetleg vkinek van kódja?
Üdv
-
zuzu000
őstag
ezzel esetleg van valakinek tapasztalata?
-
proci985
MODERÁTOR
válasz
zuzu000 #1442 üzenetére
esetleg php is jó lehet kezdeni szerintem. c++nál két fokkal javanal egy fokkal egyszerűbb, nagyon hamar lehet vele eredményt elérni. mellesleg használható is.
régebben még basicet és pascalt szokták mondnai kezdőnyelvnek, de alapvetően nem tudom, hogy mennyit nyernél velük, pascalt már nem nagyon használ senki, basicban se vagyok annyira biztos (bár excelnél még lehet használatban van pár helyen).
docnak egyébként valahol igaza van, C++ nem biztos, hogy jó kezdő nyelvnek, annak ellenére, hogy pár éve aktívan próbálgatják sok helyen ilyen szerepben. mondjuk szerintem kezdeni még mindig a C++ a jobb (pl az embernek nem kell saját dinamikus adattárolót építenie), bár mindkettő problémás. mindkettővel kb az a baj, hogy ahhoz, hogy az ember megértse, pontosan mi is történik, nem árt valamennyire képben lenni architektúrában/digitális technikában. valamint hibázni is elég könnyű velük, memóriakezelés mindkettőnél eléggé problémás lehet. java valamennyit elfed a problémákból, php meg még annál is többet.
-
doc
nagyúr
válasz
zuzu000 #1442 üzenetére
a kerdes az, mit szeretnel?
ha egyszeruen csak megismerkedni a programozassal, akkor akar a JavaScript is jo valasztas lehet, ott gyorsan lathatod az eredmenyet annak amit csinalsz, es ha kesobb komolyabban akarsz foglalkozni a temaval, akkor a hasonlo szintaktika miatt konnyu lesz C/C++ fele is tovabblepni
vagy esetleg valami jatekfejlesztesre kitalalt nyelv, pl. BennuGD -
proci985
MODERÁTOR
válasz
zuzu000 #1439 üzenetére
Ct kevésbé használják mostanában, és pár tekintetben sokkal macerásabb a C++nál.
jó könyv... hm. amivel ne kezdj, arra tudok példát mondani. a "lehányt" programozzunk C/C++ nyelven könyveket hanyagold, kaotikusak és nagyon hullámzik a nehézségük. aztán van a "The C++ programing language", Stroustruptól, az szigorúan kerülendő, hiába a C++ atyja írta. a kiadó szerint kezdőknek jó, gyakorlatban pár év tapasztalt kell hozzá.
ami jó, az a Programming paradigms and principles using c++, szintén Stroustruptól, csak kezd a második fejezettől, mert az első lazán kapcsolódik és alapvetően architektúrával foglalkozik (ha foglalkoztál digitális technikával érdekes, egyébként nem ad pluszt). azért jó, mert tényleg az elejétől kezdi, és szépen lépésenként vesz mindent. tehát ha van sok időd, akkor jó, egyébként tutorialozz. ja és angol, bár szerintem ez előny.
-
zuzu000
őstag
Sziasztok!
Szerintetek a programozás tanulást melyik nyelvvel kéne kezdeni? Sima C, vagy C++ jobb lenne? C-hez találtam tutorialt a Full Circle magazinban, így ez lehet könnyebben menne, mivel C++ könyvek amit találtam, inkább haladóknak van.
Teljesen kezdő vagyok a programozásban. Ha tudtok valamilyen jobb tanulási elkezdést, akkor azt is kérlek osszátok meg velem.
-
WonderCSabo
félisten
-
Neoteric
addikt
Sziasztok!
Első C++-os beadandó kis játékomat próbálom összerakni (snaket) és van egy-két gondom.
Nálunk a pázmányon kitaláltak egy egyedi grafikus könyvtárat amiben dolgozni kéne (codeblocks-os), szal esélytelen h neten ehhez való tutorialt találjak.
Találtam viszont mást (graphics.h), amiben vannak tök hasznos parancsok, de viszont ezek természetesen nem működnek abban amiben nekem csinálni kell.
Szóval a kérdésem/kérésem annyi, hogy az alábbi parancsokat, hogyan tudnám körülírni úgy, h bekajálja a rendszer anélkül, h includeoljak egy másik graphicsot.getpixel()
putpixel()
bar()
setcolor()
getch()Így első körben ennyi.
-
bandi0000
nagyúr
válasz
WonderCSabo #1434 üzenetére
Köszönöm jó lett...végre
-
WonderCSabo
félisten
válasz
bandi0000 #1433 üzenetére
Elrontottad a fordító beállításait. Először is ne a Debug-ot, hanem a Release módot használd első menetben. Másrészt pedig állítsd vissza alapértelmezettre a fordítási beállításokat: Settings -> Compiler and debugger -> Reset to Defaults.
Egyébként ugye a fordítóval integrált verziót töltötted le?
-
bandi0000
nagyúr
köszönöm a segítséget...
Egyenlőre csak olyat kerestem aki ért hozzá
de itt van akkor a hiba üzenet hátha valaki tud vele valamit kezdeni:"lkém - Debug" uses an invalid compiler. Probably the toolchain path within the compiler options is not setup correctly?! Skipping...
Nothing to be done. -
bandi0000
nagyúr
hali
kérdés valaki ért a clode blocks hoz? Mert egy egyszerű programot akartam lefuttatni de valami hibát ir ki valszeg beállítási hiba.... -
Gyuri16
senior tag
válasz
Jhonny06 #1428 üzenetére
a <map> egy binaris kereso fa a jobbik fajtabol, konkretan red black tree. (kulcs -> ertek) parosokat tud tarolni, es gyorsan ezekben keresni, hozzaadni.
ilyen hierarchiat megcsinalhatsz igy:
alkalmazott osztaly:
- pointer a fonokre (szinten alkalmazott osztaly)
- tomb (vagy vector, vagy map..) pointerekbol az alkalmazottakraezzel az a gond, hogy nem igazan lehet benne ertelmesen keresni. tehat ha pl van mindegyiknek neve, es meg akarod keresni, hogy az adott nevu alkalmazottnak ki a fonoke, akkor egy ilyen fanal az egeszet at kellene nezned.
ebben esetben en hozzaadnek egy map-ot amiben a kulcs a nev lenne az ertek pedig az alkalmazott. igy vegulis ket fastrukturad lenne, az egyik mutatna az egymas kozti viszonyokat (ki kinek a fonoke..) a masikkal pedig gyorsan meg tudnad talalni a megfelelo alkalmazottat az elobbi faban.
-
Gyuri16
senior tag
válasz
Jhonny06 #1426 üzenetére
nem csak ket mutato lesz lefele, hanem sok. konkretumot akkor tudok mondani, ha elmondod mire kell. binaris fakbol se csak olyanok vannak ahol a bal a kisebb ertekeke a jobb meg a nagyobbake.
ha a kereso faknal maradunk akkor nezd meg pl a b-treet. ez egy hasonlo (kicsit bonyolultabb) adatszerkezet mint a bin. kereso fa, viszont nem feltetlenul binaris. ezt adatbazisoknal hasznaljak pl.
masik jo pelda a trie amit kulonbozo szoveges algoritmusnal hasznalunk.altalanosan elmondhato, hogy minden elemben lesz tobb mutato a gyerekekre, ez lehet egy tombben, lancolt listaban vagy valami bonyolultabban.
-
Jhonny06
veterán
Egy sima fa megvalósítása mennyiben tér el egy bináris fáétól? Korábban linkeltem ezt a kódot, most egy sima fa használatával kéne megoldanom egy feladatot. Gondolom nincs ilyen kikötés, hogy balra kisebb, jobbra pedig nagyobb értéknek kell állnia. Meg nincs bal és jobb oldal, hiszen nem csak 2 ága lehet minden parent-nek, hanem akárhány. Ezért célszerűbb lenne egy előző és következő nevű mutató, valamint egy elem hozzáadásánál nem kell leellenőrizni, hogy kisebb-e vagy sem, csak belepakolni. Kb. jó, amit írok? (Bár ez már inkább láncolt lista
) Ez az egy normális tutorial van, amit találtam, de template-ekkel most nagyon nem akarok szórakozni.
-
peterszky
őstag
válasz
peterszky #1424 üzenetére
Működik
Az előbbi link és a Pythian blog útmutatása alapján sikerült gond nélkül lefordítani a vezérlőt. Ehhez le kellett kapni a Qt forrást, majd a leírás alapján qmake/make párost alkalmazni, az így létrejött libqsqloci.so-t pedig betettem a Qt telepítés sqldrivers mappájába és voilá, működik minden.
-
peterszky
őstag
Igen, csak az a problémám, hogy Oracle csomag nincs, ahogy keresgéltem...
[link] - itt írják, hogy miket kéne megtenni, csak a jelenlegi installnál hiányzik az oci mappa és a benne lévő fájlok, amik szükségesek a driver fordításhoz (qoci.pro, forrásfájlok).
(Ubuntu 11.10, Qt és Oracle 10g XE triót szeretném megkedveltetni egymással)
-
Gyuri16
senior tag
válasz
Jhonny06 #1417 üzenetére
ha arra gondolsz, hogy 4x kiirja, hogy Empty tree az azert van, mert amikor a rekurziv hivasokkal a countNodes fv a levelekbe er, ott a root NULL lesz. a fa uresseget csak a gyokerenel lehet vizsgalni. a count valtozodnak nem kellene staticnak lennie. ha mas baj is van, akkor megnezem jobban, csak ezt talaltam gyorsan.
azon kivul a pre/post/in order eljarasaidban kicsit gubanc van, gondolom itt a copy paste nem lett rendesen javitva.
-
Jhonny06
veterán
Bináris fa kiiratásánál 4X is root == NULL-ba futok, nem értem miért, pedig fel van töltve.
[link]
-
peterszky
őstag
Doc, lenne egy Qt-s kérdésem
Adatbázis műveletekhez kellene nekem a QOCI driver. Az addig tiszta, hogy ezt manuálisan kell konfigurálni, hogy működjön (Oracle include/lib elérési útvonalak miatt), de a Qt4 "sqldrivers" könyvtára alatt nincs ott az oci mappa és abban az qoci.pro. A telepítésnél toltam el valamit?
-
doc
nagyúr
kozben kiderult a hiba oka: ha van egy 'broken' referencia, akkor csinalja, meg ugy is, ha sem a formhoz, sem magahoz a projecthez nem kell egyaltalan
1) csak egyetlen VS van nyitva, es azota sem sikerult sehogy ravennem, hogy megjegyezze a SE helyzetet
a VS restart bizonyos problemakra valoban megoldas, csak baromi kenyelmetlen
az meg nem vigasztal hogy a 2010-ben mar a hibak egy reszet elviselhetove tettek, a project miatt muszaj a 2005
meg jo hogy sikerult a ceggel megvetetnem a zsenialis viemut, igy legalabb a szovegszerkeszto resze hasznalhato lett
-
amargo
addikt
Vannak itt gyöngyszemek, amiket a studio csak a 10-es verziójára volt képes kinőni
Ezt gondolom már megtaláltad., tovább. De erre én is csak azt tudom írni, hogy a project-el van a gond, nálunk is volt rengeteg ilyen, akár hibás control-nak köszönhetően. Pl a devexpress-es control-ok sokszor szörnyen vannak megírva, igaz a support válaszol.
1, ilyen akkor szokott lenne, ha több studio is meg van nyitva, akkor a legutolsóját jegyzi meg.
2,
a, 10-es ben oldották meg
b, továbbra is szívásÉn relative path hivatkozásokat használok, mert bizony a referenciákkal bőven lehet szívni. Amióta csak így használom nem futottam ilyen hibába.
3, C# esetén szinte mindig pontos üzeneteket ad, igaz a 8-al való ismereteim már kicsit megkoptak, de ott is inkább a c++-os projektekkel szívtam én is, de ezek inkább a linker "hibái".
Van egy "általános megoldás" a furcsa hibákra, VS újraindítása
, nálam is tűntek már el dolgok kb évente 1x a tfs-t elveszti.
A megfogott fájl kapcsán pedig érdemes megnézni process explorer-el, mert bizony meg van az fogva, ilyenkor nálam mindig az a helyzet, hogy a VS fogta meg és bizony újra kell indítaniSajnos a frissítések itt új vásárlást is jelentenek, amit sokszor nem is lehet megjátszani, mert <1.1-et már csak target-ek bűvészkedésével lehet elérni.
Hozzáteszem nem védeni akarom, csak mint írtam sokszor rájöttem, hogy bizony én hibámból feküdt meg a VS, persze az UI-ra ez nem mentség, az a régebbi verziókban tényleg borzalmas, ha 6-ot használtál, akkor igazán ott kaparod meg magad
-
Gyuri16
senior tag
válasz
CoolBoy323 #1410 üzenetére
ahogy doc is irta, ha webes dolgokat akarsz akkor nem. bar letezik a delphi for php dolog, amibol elvileg valamilyen weboldal lesz, viszont ezt biztos nem ajanlanam kezdonek. masik ellenerv, hogy jelenleg nincs ingyenes verzio delphibol (alternativa a freepascal alapu lazarus).
webes vonalon egyertelmu, hogy kell html + css + javascript. es utana valamilyen szerver oldali kod. en php-t ajanlom, foleg azert, mert ez a legnepszerubb, sok anyag van hozza, es a forumon is konnyen kapsz segitseget.
ez a tema eleg gyakran felmerul, es tobbnyire mindenki a sajat kedvenc nyelvet probalja "eladni", mostanra a tobbseg mar megunta, ezert nem lett belole tul hosszu vita
-
Chipi333
csendes tag
válasz
Jhonny06 #1408 üzenetére
Sima return-el csak void fv-ben tudsz visszatérni, egyébként a compilernek sikitania kéne. Ott viszont nem tudsz vele hibát jelezni, mivel ez az egyetlen visszatérési értéked, szóval nem értem a dolgot.
Az jutott még eszembe, hogy pointer tipusnál talán null-t adna vissza de a g++ akkor is errort dobott rá. -
doc
nagyúr
válasz
CoolBoy323 #1410 üzenetére
ha webre akarsz fejleszteni, akkor felesleges, egyebkent nem rossz valasztas
-
doc
nagyúr
válasz
Jhonny06 #1408 üzenetére
ha a fv-nek van visszateresi erteke (marpedig van, kulonben nem kerdezned
), akkor valamit mindenkepp adj vissza. ezt elvileg a forditonak sem lenne szabad engedni, ha megis, akkor forditofuggo hogy mit csinal pontosan gondolom
kulonben ha fel akarod hasznalni a visszateresi erteket, akkor mit fogsz kapni?
szoval sima return-t csak void fv-ekben hasznalj -
Jhonny06
veterán
Simán return;-al mennyire szerencsés visszatérni olyan esetben, amikor nem várt eredmény miatt meg akarjuk szakítani a folyamatot? Én return 1;-et szoktam használni, ezzel a megoldással egészen idáig nem is találkoztam.
-
Gyuri16
senior tag
válasz
kingabo #1404 üzenetére
delphit meg fejlesztik, csak mar nem a borland. amugy szerintem egy nagyon jo nyelv kezdonek. orokolte a pascal jo tulajdonsagait es gyorsan ossze lehet benne kattingatni mutatos guit. nalunk egyetemen delphi (most mar lazarus) az elso prog. nyelv.
Jhonny06: c++ es java kozt azert eleg nagy a kulonbseg. utobbi joval szigorubb es ezert jobb egy kezdonek. szerintem ha komolyan gondolja valaki siman lehet kezdonyelv. egyetlen gond, hogy konnyen elkenyelmesedik a garbage collector mellett, es nehezebb lesz az esetleges valtas c++ra pl.
-
kingabo
őstag
Ezt nem tudtam.
Nálunk egyetemen a mai napíg tanítanak ADA-t, ill tudtommal fejlesztik is a nyelvet azért említettem azt a Delphivel szemben. Illetve érzetre könnyebb Pascalról ADA-ra átmenni egy kezdőnek, mert közelebb áll (vagy csak én éreztem így) a 2 gondolkodás módja, mint a Delphinek. Persze webfejlesztéshez se Pascal se Ada. -
doc
nagyúr
válasz
kingabo #1402 üzenetére
A pascal-ra "épül" az ada amit katonáéknál elég sok helyen használnak ma is
nekem mondod? (katonai repulesszimulacios szoftverek fejlesztese a munkam)
de az ADA-nak max. torteneti es szintaktikai koze van a pascalhoz, ami inkabb erdekes hasonlosag, mint valodi segitseg a gyakorlatban... (raadasul a fejlesztok legalabb 99%-a sosem talalkozik 'elesben' ADA koddal a palyafutasa soran)
akkor mar inkabb a Delphit emlegesd, mivel az kezd a kihalas fele kozeledni, a Delphi-fejlesztok erteke novekedoben van
ez olyan mint nalunk az ADA meg a Fortran, egy-egy tenyleg jo ADA vagy Fortran fejleszto ma mar aranyat er -
kingabo
őstag
"a pascal tanulni jo, de gyakorlati haszna maganak a nyelvnek nem sok van..."
A pascal-ra "épül" az ada amit katonáéknál elég sok helyen használnak ma is."webfejlesztesre meg ahogy mondod, a C#nem jatszik "
Ott az asp.net, igaz kezdőknek nem ezzel kell kezdeni, meg ehhez is kell előtte html+js. -
doc
nagyúr
az hogy az UI a leheto legtavolabb esik a kenyelmestol
a jelenlegi problemam pl a kovetkezo:adott egy C# project, benne egy form. rakattintok duplan, hogy megjelenitse
ehelyett kapom a kovetkezo uzenetet:<html><head><META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=UTF-8"><title></title><style>.ErrorStyle { font-family: tahoma; font-size: 11 pt; text-align: left}.DetailsStyle { font-family: tahoma; font-size: 10pt; text-align: left;text-indent: 0; word-spacing: 0; line-height: 100%; float: left; margin-top: 0; margin-bottom: 0}.StackStyleVisible { font-family: tahoma; font-size: 10pt; text-align: left; margin-left: 20; text-indent: 0}.StackStyleHidden { display:none; font-family: tahoma; font-size: 10pt; text-align: left; margin-left: 20; text-indent: 0}</style></head><body><DIV class="DetailsStyle" width="100%"><table border="0" width="100%" id="table1" height="100%" cellspacing="0" cellpadding="0"><tr><td height="40" bgcolor="#FF9999" width="8%" style="letter-spacing: 0" align="center"><img border="0" src="C:\Documents and Settings\nbokor\Local Settings\Temp\1311757.tmp" width="35" height="35" alt="ErrorImage" ></td><td height="40" bgcolor="#FF9999" width="91%" style="vertical-align: top; letter-spacing: 0" align="left"><b><font size="2" face="Arial" fontsize="70%">One or more errors encountered while loading the designer. The errors are listed below. Some errors can be fixed by rebuilding your project, while others may require code changes.</font><font size="2" face="Arial"></font></b></td></tr><tr><td colspan="2" align="left" valign="top"><DIV id="div1" class="ErrorStyle" width="100%"><span style="font-weight: 600"><br>The path is not of a legal form. </span><br><a href="" id="details0">Hide</a><font color="#0000FF">  </font></DIV> </td> </tr> <tr><td colspan="2" align="left" valign="top"><DIV id="div20" class="StackStyleVisible" width="100%"><br> at System.IO.Path.NormalizePathFast(String path, Boolean fullCheck)<br> at System.IO.Path.NormalizePath(String path, Boolean fullCheck)<br> at System.IO.Path.GetFullPathInternal(String path)<br> at System.Reflection.AssemblyName.GetAssemblyName(String assemblyFile)<br> at Microsoft.VisualStudio.Design.VSTypeResolutionService.AddProjectDependencies(Project project)<br> at Microsoft.VisualStudio.Design.VSTypeResolutionService.AssemblyEntry.get_Assembly()<br> at Microsoft.VisualStudio.Design.VSTypeResolutionService.AssemblyEntry.Search(String fullName, String typeName, Boolean ignoreTypeCase, Assembly& assembly, String description)<br> at Microsoft.VisualStudio.Design.VSTypeResolutionService.SearchProjectEntries(AssemblyName assemblyName, String typeName, Boolean ignoreTypeCase, Assembly& assembly)<br> at Microsoft.VisualStudio.Design.VSTypeResolutionService.SearchEntries(AssemblyName assemblyName, String typeName, Boolean ignoreCase, Assembly& assembly, ReferenceType refType)<br> at Microsoft.VisualStudio.Design.VSTypeResolutionService.GetType(String typeName, Boolean throwOnError, Boolean ignoreCase, ReferenceType refType)<br> at Microsoft.VisualStudio.Design.Serialization.CodeDom.AggregateTypeResolutionService.GetType(String name, Boolean throwOnError, Boolean ignoreCase)<br> at Microsoft.VisualStudio.Design.Serialization.CodeDom.AggregateTypeResolutionService.GetType(String name)<br> at System.ComponentModel.Design.DesignerHost.System.ComponentModel.Design.IDesignerHost.GetType(String typeName)<br> at System.ComponentModel.Design.Serialization.CodeDomDesignerLoader.EnsureDocument(IDesignerSerializationManager manager)<br> at System.ComponentModel.Design.Serialization.CodeDomDesignerLoader.PerformLoad(IDesignerSerializationManager manager)<br> at Microsoft.VisualStudio.Design.Serialization.CodeDom.VSCodeDomDesignerLoader.PerformLoad(IDesignerSerializationManager serializationManager)<br> at Microsoft.VisualStudio.Design.Serialization.CodeDom.VSCodeDomDesignerLoader.DeferredLoadHandler.Microsoft.VisualStudio.TextManager.Interop.IVsTextBufferDataEvents.OnLoadCompleted(Int32 fReload)</DIV></td></tr></table></div></body></html>
ezt pont igy, ahogy latod, HTML forras formajaban, egyetlen sorban raadasul. persze egy uj html file-ba copy/paste-elve es bongeszonek megmutatva mar latom a valodi hibauzenetet - ami SEMMI informaciot nem ad arrol, hogy mi a baja...
azert az hozza tartozik az igazsaghoz, hogy a fenti hiba LEHET hogy nem maga a VS miatt van, hanem koze van ahhoz a kozel sem egyszeru projecthez, aminek resze a fenti cucc (bar tekintve hogy a komplett truecrypt containert masoltam a masik geprol, amin jol mukodott, nem hiszem)
aztan, meg igy hirtelen nehany ami eszembe jut:
1) hiaba huzom at a solution explorer view-t jobb oldalra, a kovetkezo VS inditasnal ugyanugy bal oldalon marad. erdekes modon az output/error window lerakasat a kepernyo aljara megjegyezte, ezt nem...
2) referencia hozzaadasa
2a) C# projectnel: a References node-on jobbklikk, add references, referenciat kivalaszt a file select ablakban. leokez. a kovetkezo referencianal ugyanez, es persze NEM abbol a konyvtarbol indul, ahol az elozot kivalasztottam, hanem ujra es ujra el kell oda setalnom, ha mondjuk 2-3 egymas melletti konyvtarbol akarok DLL-eket hozzaadni
2b) C++ projectnek: projecten jobbklikk, menubol References, majd feljon egy katasztrofalis, teljesen hasznalhatatlan ablak, ami mintha a 80-as evekbol kerult volna ide
eloszor is: NEM ATMERETEZHETO!! jon egy fix, negyed kepernyo meretu ablak (notebook-kepernyon, nagyobb asztali monitoron talan tizedkepernyonyi lehet), es NEM lehet atmeretezni!! van benne egy csomo akkora kis elem, amihez kepest egy tank lorese templomkapu. ha barmelyik ilyen kis loresecskeben latni akarok valami informaciot azon a nehany karakteren kivul, ami latszik, a lathatatlan vonalat kell valahogy megtalalni (mint a regi point and click kalandjatekokban, mikor az ember addig rangatta ide-oda az egeret, mig valahol meg nem valtozott az egerkurzor), es at tudom meretezni - a tobbi karara. ha tobb olyan is van, ahol latni akarok valamit, akkor ide-oda kell rangatni azt a Qrva slidert
persze ez csak azoknal a listaknal mukodik, amik atmeretezhetoek, olyan is van amit eleve lehetetlen (pl. a baloldali menufa)
a referenciakat itt TELJESEN mashogy mutatja/kezeli mint C#-nal, holott siman lehetne ugyanazt a feluletet hasznalni de NEEEEEEM, az tul kezenfekvo lenne, ugye...
bal oldalt a kis loresben latom a referenciak nevet listazva. eltavolitani, hozzaadni termeszetesen EGYSZERRE EGYET lehet csak, nehogy mar 2005-ben valaki olyan extra ficsoroket akarjon, mint egyszerre tobb file kivalasztasa... (erdekes, a C#-os dialogban legalabb ez mukodik)na de a legjobb, amikor egy referenciat nem talal (pl. mert a konyvtar, amire hivatkozott mashova kerult, vagy ha annak a neveben verzioszam van, akkor az megvaltozott)
ugyebar a referencia property-jei kozott van egy olyan, hogy 'Path', ami az utvonal, ahol a kivalasztott DLL talalhato
ha nem talal egy referenciat, nagyon egyszeru a megoldas, a path-on latom hogy hol volt eredetileg, siman atirom ugy, hogy megtalalja az ujat, ugye? HAT NEM!!!
ugyanis amikor nem talal egy referenciat, akkor KITORLI a teljes path-t, nehogy akar csak eselyed is legyen tudni, hogy honnan jon a DLL
egy olyan nagy projectben, ami tobb tucat kisebb projectre van bontva, koszonhetoen annak hogy a VS rogeszmesen masolgatja mindenhova a DLL-eket, mindegyik tobb peldanyban letezik, es mivel a VS direkt kitorli a Path-t, eselyed sincs tudni hogy ezek kozul melyik az 'igazi', amibol a tobbi masolat keszult...3) a hibauzenetek tobbnyire teljesen hasznalhatatlanok
az meg a 'jobbik eset' mikor egy hibauzenet semmi informaciot nem tartalmaz arrol, hogy mi a baja
az mar sokkal nagyobb szivas, amikor kiir egy okot, de igazabol NEM AZ a baj. szopsz egy orat azzal, hogy megprobalj rajonni miert nem talal egy file-t, mire leesik hogy attol fuggetlenul, hogy azt mondja, NEM az a baja, hanem valami teljesen mas, amire persze meg csak nem is utal... (van egy kollegam, aki sok-sok eve hasznal VS-t meg C#-ot, o mar fejbol tudja hogy pl. a 'kek haromszog nem fer a piros negyzetbe' hibauzenet igazabol azt jelenti (az esetek 70-80 %-aban, a tobbiben valami teljesen mast) hogy 'a negy szeletre vagott alma nem oszthato el tovabbi vagas nelkul 5 tanyerra')es meg sorolhatnam veg nelkul, folyamatosan csak szopok/szivok vele, a munkaidombol rengeteg csak arra megy el, hogy ezt a szerencsetlen hulladekot hasznalni probalom
erdekes modon olyan projecteknel, ahol nem VS-t hasznalunk, a fejlesztessel tudok foglalkozni, nem az idiota robotikus feladatok elvegzesevel meg a fejlesztokornyezet hibainak workaroundolasaval...
(bocs ha kicsit offenziv a hangnem, nyilvan nem ellened iranyul, csak a VS-ra tudok kegyetlenul kiakadni)
MOD: meg megy egy: idonkent mikor teljesen rejtelyes bugokat produkal (pl. nem buildel le egy projectet valami teljesen ertelmezhetetlen hibauzenettel, miszerint nem talal egy forrasfile-t, ami ott van, vagy kozli hogy mar megvan nyitva mashol (persze nincs)), akkor be szokott valni, hogy a documents and settings\user\local settings\application data\stbstb konyvtarban kitorolom kezzel a VS temp file-jait. user experience FTW...
Ú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!
- HP EliteDesk 800 G2 DM Mini PC, I5-6500T CPU, 8GB DDR4, 256GB SSD, Win 11, Számla, 2 év garancia
- HP EliteDesk 800 G3 DM Mini PC, I5-6500T CPU, 8GB DDR4, 256GB NVMe SSD, Win 11, Számla, 2 év garanci
- HP ProDesk 600 G3 SFF PC, I5-7500 CPU, 8GB DDR4, 256GB NVMe SSD, DVD RW, Win 11, Számla, 2 év garanc
- HP ProDesk 400 G4 SFF PC, I5-7500 CPU, 8GB DDR4, 256GB SSD, DVD RW, Win 11, Számla, 2 év garancia
- Dell Optiplex 3050 PC, I5-7500 CPU, 8GB DDR4, 256GB SSD, Win 11, Számla, 2 év garancia
- LG 32GS95UE - 32" OLED / UHD 4K / 240Hz - 480Hz & 0.03ms / 1300 Nits / NVIDIA G-Sync / AMD FreeSync
- Bomba ár! Dell Latitude 5400 - i5-8GEN I 16GB I 512SSD I 14" HD I HDMI I Cam I W11 I Gari!
- Update 07.09. Bomba árak 2025-ben is! Üzleti - Consumer laptopok DELL FUJITSU HP LENOVO
- ÁRGARANCIA! Épített KomPhone Ryzen 5 7500F 16/32/64GB RAM RTX 5070 12GB GAMER PC termékbeszámítással
- Csere-Beszámítás! RTX Számítógép PC Játékra! R5 8400F / RTX 3070Ti / 32GB DDR5 / 1TB SSD
Állásajánlatok
Cég: Promenade Publishing House Kft.
Város: Budapest
Cég: PCMENTOR SZERVIZ KFT.
Város: Budapest