Hirdetés
- Luck Dragon: Asszociációs játék. :)
- sziku69: Fűzzük össze a szavakat :)
- Sub-ZeRo: Euro Truck Simulator 2 & American Truck Simulator 1 (esetleg 2 majd, ha lesz) :)
- Luck Dragon: Alza kuponok – aktuális kedvezmények, tippek és tapasztalatok (külön igényre)
- Jhonny06: Új gépsárkány
- Magga: PLEX: multimédia az egész lakásban
- laca223: Miért győz a kollektív meggyőződés akkor is, ha saját magát teszi tönkre?
- GoodSpeed: Munkaügyi helyzet Hajdú-Biharban: észak és dél
- sziku69: Szólánc.
- Geri Bátyó: Agglegénykonyha 10 – Alapanyagok/készételek többféle felhasználása
-
LOGOUT

Új hozzászólás Aktív témák
-
flugi
tag
válasz
kisfurko
#760
üzenetére

no akkor kicsit más szemszögből: a kód biztonságának egyik kulcsa, hogy észreveszed a hibát a kódban. Sokan (köztük én is) i nevű ciklusváltozót szeretünk használni. Ha van egy programom, amiben van egymás után két ciklus, akkor mindkettőben az i nevű változót használom, de egymáshoz nincs semmi közük. Amikor elírok valamit, és az értékadásban a ciklusaim után véletlenül az i változót akarom használni, akkor hibaüzenetet fogok kapni. Ami persze nagyon jó, mert annak ott tényleg semmi értelme nincs. (ha nem tudnám hol áll meg a ciklus, akkor while-t használok)
A C++ alapkönyvben (Stroustrup) a legelső alapelv a C programozóknak akik C++-ban akarnak programozni, hogy deklaráljuk a változókat ott, ahol szükség van rájuk, úgy, hogy csak addig éljenek, amíg kellenek. A legelső példák egyike a for ciklus fejlécében deklarált ciklusváltozó.
A hatékonyság pedig nem változik meg, kipróbáltam ezt a két kódot:
for (int j=0;j<1000000000;j++) {
int i;
for (i=0;i<10;i++)
{
}
}
meg:
for (int j=0;j<1000000000;j++) {
for (int i=0;i<10;i++)
{
}
}
és nem volt észrevehető különbség, holott eléggé felnagyítottam volna
(G++ DevC++ IDE-ben)
kompaktabb kód, biztonságosabb kód, hatékonysági áldozat nélkül. Tiszta nyereség.
flugi -
Miracle
senior tag
válasz
kisfurko
#756
üzenetére
na akkor most leirom azt amit az elobb is leirtam:

van 2 lehetoseg:
szukebb lathatosag : ekkor nem szemeteled tele a nevtereket feleslegesen valtozonevekkel, amik novelik a kod erthetoseget, a kodolast, es konnyitik a debuggolast. Ha megis kell neked a valtozo erteke a cikluson kivul is, akkor elotte 1 sorral deklaralod, szoval GYAKORLATILAG 0 MUNKAVAL MEG LEHET OLDANI.
tagabb lathatosag: bizonyos esetekben szukseg van a ciklusvaltozo ertekere a cikluson kivul is, de ilyenkor nem _illik_ for-ciklust hasznalni, es ezzel tobb szuksegtelen valtozo is bele kerulhet a tagabb nevterbe, ami kis problemat jelenthet, ha mondjuk 1 blokkban 6 ciklus kellene egymas utan. tehat _neha_ sporolhatnal ezzel egy sort, es _mindig_ teleszemeteled a nevtered, ezzel nehezitve a debugolast.
ezt nem kivanom tovabb magyarazni, szerintem ebbol siman ertheto, hogy miert az elso valtozat kerult szabvanyba. (azert mert a tapasztalat szerint _is_ az a hatekonyabb megoldas es jobban illeszkedik a c++ filozofiahoz) -
Miracle
senior tag
válasz
kisfurko
#753
üzenetére
valojaban az a jobb, ha csak a ciklusban lathato, mert igy tisztabbak maradnak a nevterek. ha meg neked megis kivul is kell akkor elotte deklaralod es kesz. szoval jobb a szabvanyos megoldas. (eheh sajnos valamely ceget a szabvanyok nem erdeklik, sztem amikor SOAP melle allt a pici & puha mar akkor is fejek hullottak erte
![;]](//cdn.rios.hu/dl/s/v1.gif)
)
Új hozzászólás Aktív témák
● olvasd el a téma összefoglalót!
- Házimozi belépő szinten
- Luck Dragon: Asszociációs játék. :)
- A Windows 11 nem akarja ránk erőltetni az AI applikációkat – vagy mégis?
- PlayStation 5
- Kuponkunyeráló
- Napokon belül mindenki megkapja a GeForce Now időlimitjét
- Na, milyen hardver kerül a fa alá?
- HiFi műszaki szemmel - sztereó hangrendszerek
- TCL LCD és LED TV-k
- AMD Navi Radeon™ RX 9xxx sorozat
- További aktív témák...
- KARÁCSONYI AKCIÓ!!! LENOVO ThinkCentre M800 - i7, 8GB/120GB
- Felújított Samsung Galaxy s22 ultra 12/256
- ASRock X570M + Ryzen 5 5600X + 32GB DDR4 + MasterBox MB320L ARGB félkonfig
- RTX 4070 ti I Ryzen 5 7600X I 2x16gb ddr5 6000mHz
- LAST MINUTE KARÁCSONY! 2 egyforma i7 GAMER GÉP! Ingyenes SOS kiszállítás (Bp.) !!!
- Azonnali készpénzes Intel i5 i7 i9 8xxx 9xxx processzor felvásárlás személyesen / csomagküldés
- ÁRGARANCIA! Épített KomPhone i5 12400F 16/32/64GB RAM RTX 5050 8GB GAMER PC termékbeszámítással
- Kaspersky, BitDefender, Avast és egyéb vírusírtó licencek a legolcsóbban, egyenesen a gyártóktól!
- Lenovo ThinkPad T14s Gen 3 i5-1245U 14" FHD+ 16GB 512GB 1 év teljeskörű garancia
- ÁRGARANCIA!Épített KomPhone Ryzen 7 7800X3D 32/64GB RAM RTX 5090 32GB GAMER PC termékbeszámítással
Állásajánlatok
Cég: Laptopszaki Kft.
Város: Budapest
Cég: BroadBit Hungary Kft.
Város: Budakeszi



![;]](http://cdn.rios.hu/dl/s/v1.gif)

