Új hozzászólás Aktív témák
-
dobragab
addikt
válasz
jattila48
#2924
üzenetére
Összekeversz két problémát. Ha csak az egyik elemre van szükség, akkor jó a függvény:
int tombben_keres(int tomb[], int meret, int szam)
{
for(int i = 0; i < meret; ++i)
if(tomb[i] == szam)
return i;
return -1;
}Ha viszont mindenképp a teljes tömbön kell végigiterálni (összes nagybetű kiírása, pozitív számok összege, stb), akkor minek break? Simán végigmegy rajta.
for(int i = 0; i < meret; ++i)
if(isupper(str[i]))
std::cout << str[i]; -
ToMmY_hun
senior tag
válasz
jattila48
#2924
üzenetére
Kezdő kérdés: Ugye sima int típusnál csak azért használsz, illetve használnak a gyakorlott C++ programozók pre-increment operátort, mert megszokták az STL-es iterátor inkrementálásnál? Annyit tudok, hogy iterátor típusnál célszerű a pre-increment, mert futásidőben a post akár kétszer olyan lassú is lehet, viszont ez nem igaz sima integer-nél, ugye?
-
LordX
veterán
válasz
jattila48
#2924
üzenetére
Vagy csak simán
auto elem = find(begin(tomb), end(tomb), feltetel);
if (elem != end(tomb)) { /* *elem-et kerested */ }- Rövidebb (1 függvény 3 paraméterrel)
- öndokumentáló (vajon mit csinál ez a ciklus ezzel a bonyolult feltétellel vs vajon mit csinál a find függvény)
- ha lassabb kódot generál, akkor sürgősen cseréld le a fordítód, mert konkrétan ugyanaz a kód, miután inline-oltad
- gyorsabb is lehet, ha ki tudja használni a konténer / elem típusát
- nem random access konténerrel (set, list..) is működik
Ú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!
- Zotac RTX 2060 AMP 6GB GDDR6
- PlayStation VR2 szett, töltőállomással és merev hordozótáskával, Bp-i üzletből eladó!
- PlayStation 4 Pro 1TB 7216B, frissen pasztázva, 6 hó garanciával, Bp-i üzletből eladó!
- Xiaomi Redmi Note 12 128GB, Kártyafüggetlen, 1 Év Garanciával
- Samsung Galaxy Tab A7 Lite 8,7" 3/32GB Wifi (SM-T220) szürke színben
- Dell D6000 univerzális dokkoló USB-C/ USB-A, DisplayLink & Dell WD15 (K17A) USB-C + 130-180W töltő
- BESZÁMÍTÁS! Xiaomi Mi 2K 27 165Hz IPS QHD 1ms monitor garanciával hibátlan működéssel
- HP EliteOne 800 G5 All-in-One i5-9500 16GB 512GB 23.8" Érintőkijelző!! 1 év garancia
- Lenovo Thinkpad 13 G2 Intel i5-7200 laptop (hibás)
- Bomba ár! Dell Latitude E6430 - i5-3GEN I 4GB I 320GB I HDMI I 14" HD I Cam I W10 I Garancia!
Állásajánlatok
Cég: Promenade Publishing House Kft.
Város: Budapest
Cég: PCMENTOR SZERVIZ KFT.
Város: Budapest

