- Milyen okostelefont vegyek?
- Fotók, videók mobillal
- Samsung Galaxy A36 5G - a középső testvér
- Egyszerre legnagyobb és legkisebb is a Garmin Venu X1
- Samsung Galaxy S25 Ultra - titán keret, acélos teljesítmény
- Samsung Galaxy Watch (Tizen és Wear OS) ingyenes számlapok, kupon kódok
- Magisk
- iPhone topik
- Yettel topik
- LG V50 ThinQ Dual Screen - az 5G ára
Új hozzászólás Aktív témák
-
Sk8erPeter
nagyúr
válasz
Gyuri16 #1681 üzenetére
dabadab, Gyuri16: hmm, végül is igazatok van, sebességkritikus alkalmazásoknál akkor ezzel tényleg könnyen lehet optimalizálni.
Valóban, végül is arra imént nem gondoltam, hogy egy sokparaméteres függvény elég ocsmány lehet - bár be lehet pakolni tömbbe is a dolgokat, így egy paraméterbe "benyomsz" mindent, de ez sok esetben eléggé overkill lehet; az meg még ocsmányabb, ha globális változókkal szarakodunk, meg mondjuk nem mindent kell feltétlenül tárolni osztályváltozók formájában. -
Sk8erPeter
nagyúr
válasz
Gyuri16 #1677 üzenetére
Mondjuk a threadben még csak az elejénél tartottam, amikor írtam, Linus tényleg egy kicsit ajtóstul ront a házba (de minden házba
).
"de igen, viszont ha a cel a minel kisebb/gyorsabb kod, akkor jobban jarsz a kis fuggveny inlineolasa (vagy call) helyett a goto-val."
A "kisebb kód" részt úgy érted, hogy a fordítás után összességében valszeg kisebb kódot eredményez a függvényhívás, mert kihagyható a függvényhívás? Vagy hogy?
Ha csak úgy, hogy maga az eredeti forráskód kisebb lesz, hát azt nem látom be, hogy miért. Egy metódus/függvény fejléce és a blokkot közrefogó kapcsos zárójelek olyan nagyon sok helyet foglalnak pluszban?
De ilyen alapon akkor ott a label, meg a kettőspont... de vaze, itt már pár karakternyi különbségekről beszélünk.
Ha meg a gyorsaságról van szó, végül is a függvényhívás overheadje így a gotoval valóban elkerülhető, de azt hiszem, erről csak nagyon durván sebességkritikus alkalmazások esetén van egyáltalán értelme beszélni, ahol az adott konfiguráció van olyan gyenge, hogy ilyen szintű különbségek egyáltalán érzékelhetők legyenek.
Mondjuk arra kíváncsi lennék, milyen szintű különbségek jöhetnek ki."raadasul a goto csak egy sor, mig a fuggvenyhivas + return 2
"
Mivel ott a smiley, ezt inkább viccnek veszem, mint érvnek.=====
(#1678) proci985 :
akkor jó, megnyugodtam, már azt hittem, az is szar könyvnek minősül.Szerintem az a kifejezetten jók közé tartozik. Amúgy az egyik író, Benedek Zoltán C#-ban is jó koponya, azt is tanít nálunk.
-
Sk8erPeter
nagyúr
válasz
Gyuri16 #1671 üzenetére
Valamit félreértettél, én nem utasítom el dogmatikusan.
Inkább csak kíváncsi voltam a szempontokra és konkrét példákra, hogy vajon miért jobb, és mi lehet az alternatíva. Hát már kötekedni sem lehet?
Csak felvetettem, hogy lehetnek alternatívák, vajh' miért jobb a goto.
Ez a thread bejövős, végre olvasok igazi érveket is, korábban csak vitatható szempontokat olvastam arra vonatkozóan, hogy miért is jó vagy miért is rossz. Igazából én speciel egyelőre csak batch-programozásnál használtam goto-kat, komolyabb nyelveknél eddig elkerültem, valahogy eddig egyáltalán nem állt rá a kezem/agyam.
Egyébként tuti, hogy néhány kód valóban rövidebb lehetne goto-val (pl. elkerülve a sok if-et, külön függvénybe rakást, stb.), de egyelőre eléggé ódzkodom tőle - lehet, hogy jobb is, ha nem akarok ócsárlást hallani másoktól.Amúgy bírom Linus Torvalds stílusát, az biztos, hogy nem veti csak úgy alá magát véleményeknek.
Ja, majdnem lemaradt az érdemi részre reagálás:
"masodik pontod: szerintem itt dabadab arra gondolt, hogy ha pl valamilyen resourcot fel kell szabaditani return elott. itt egyszserubb a vegere tenni a felszabadito kodot returnnal, es a tobbi helyrol csak gotozni a vegere. persze c++ eseten ezt illik OO szinten megoldani, vagy finally-ban.."
Az utolsó mondatoddal végül is elmondtad, amit akartam mondani.
Ilyen esetben továbbra sem látom semmi értelmét/hasznát/átláthatóságbeli előnyét a goto-nak, mert nem értem, C++ topicban miért is ne feltételezhetnénk, hogy mondjuk destruktorban vagy más metódussal intézzük el az erőforrások felszabadítását, stb... vagy megint máshogy, akár egy mezei globális függvénnyel...
Nem épp a sűrűn ismétlődő feladatok elvégzésére szoktunk például függvényeket írogatni? -
proof88
addikt
válasz
Gyuri16 #1122 üzenetére
az ncb fájlt letörölheted nyugodtan, az csak az intellisense-nek kell és a VS automatikusan újragenerálja majd ismerősödnél ... sőt egyébként van amikor megbolondul az intellisense és nem akar működni rendesen, olyankor is ajánlott letörölni azt a fájlt.
Valamint a VS által létrehozott debug ill release mappákat is törölheted, oda csak a fordítás eredményei kerülnek. -
Gyuri16
senior tag
válasz
Gyuri16 #1027 üzenetére
ok, ez igy hulyeseg
kozben rajottem, mi volt a lenyegi gond, tehat az operator[] fv-nek egy referenciat kell visszaadni, itt konkretan egy pointerre.
erre jutottam, leirom azoknak, akik az elozot elolvastak es nem ertik min kinlodok
(ha esetleg lehet jobban, szoljatok)#include <iostream>
#include <vector>
using namespace std;
class ChildList {
private:
vector<int *>* v;
public:
ChildList(int n) {v = new vector<int *>(n);}
int* & operator[] (const int index);
};
int * & ChildList::operator[](const int index) {
return (*v)[index];
}
int main(int argc, char **argv) {
ChildList cl(10);
int * a = new int(5);
cl[0] = new int(5);
cl[1] = a;
cout << *cl[0] << *cl[1];
return 0;
} -
G4bi89
senior tag
Nem volt korrekt a dolog értem én mondjuk félig meddig viccnek szántam szmájli lemaradt így nem véresen komolyan vettétek
Viszont eszem ágában nincs programozásban elhelyezkedni majd 1féléves tantrágy szóval csak most van. Nem is értem mért rakták be mert egy rendszergazdának azért ritkán kell C++ - ban programokat írni. Na mind1
Köszönet minden tanácsért ennek ellenéreTaláltam itt ott dolgokat
Karakter számlálásra:
[http://pastebin.com/nWSkM35G]Magánhangzó számlálás:
[http://pastebin.com/5bzbJWMv]
Igaz itt magát a betűket írja ki nem a darabszámát.Összehozni nem sikerült a dolgokat még
ps.:
Kétdimenziós tömböt nem vettük így az kilőve szerintem. (áltozok,adatkiírás,bevitel,feltétel vizsg,ciklusok,tömbök, véletlen számok rand fg. külső fájlok beolvasása, struktúrák ami volt) -
Jester01
veterán
ss << year << '.'; //Ev
if (month < 10) { // 1 helyett 01 legyen
ss << 0;
}
ss << month << '.'; //Honap
if (day < 10) {
ss << 0;
}
ss << day << '.'; //NapEzt c++ nyelvjárásban úgy mondják, hogy
ss << setfill('0')
<< setw(4) << year << '.'
<< setw(2) << month << '.'
<< setw(2) << day << '.'; -
j0k3r!
őstag
hello! elakadtam :/
van egy ilyen strukturam:
struct user
{
char nev[20];
char ok[30];
char datum[11];
};egy ilyen bovitofuggvenyem:
int banlist::bovit()
{
user adat;
system("cls");
cout<<"uj ban hozzaadasa"<<endl;
cout<<"-----------------"<<endl;
cout<<"nev: ";
cin>>adat.nev;
cin.ignore(80,'\n');
cout<<"ban oka: ";
cin.getline(adat.ok, 30);
cout<<"datum: ";
cin.getline(adat.datum, 11);
cout<<endl;
lista.push_back(adat);
cout << "\nsikeresen bovitettuk a listat";
cin.clear();
cout << endl;
return 0;
}teszt celjabol ugy csinaltam meg, hogy kezzel kelljen bevinni a datumot, de a te modszereddel sehogy se megy. tudnal segiteni, hogy az adat.datum -ba az aktualis datum keruljon?(2000.01.01. formaban)
elore is koszi.
Új hozzászólás Aktív témák
Hirdetés
● ha kódot szúrsz be, használd a PROGRAMKÓD formázási funkciót!
- Asus F15 FX516PR 15.6" FHD IPS i7-11370H RTX 3070 16GB 1TB NVMe magyar vbill gar
- Újszerű HP 250 G10 - 15.6"FHD IPS - i3-1315U - 8GB - 512GB SSD - Win11 - 1,5 garancia - MAGYAR
- új bontatlan iPhone 16 Pro 128GB black titanium fekete titán független Apple 1 év garancia ajándék
- HP 635 laptop eladó
- Thinkpad X230 legenda: i7 CPU, IPS kijelző, 12 GB, dupla SSD, magyar villbill, webcam, fingerprint
- Csere-Beszámítás! Asus Rog Strix GTX 1080Ti 11GB GDDR5X Videokártya!
- DDR5 8/ 16/ 32GB 4800-5600MHz SODIMM laptop RAM, több db- számla, garancia
- 1-12 részletre.Új noblechairs EPIC műbőr FEKETE - FEKETE. 2 év garancia!
- ÚJ Apple Macbook Air 15,3 M4 10C CPU/10C GPU/16GB/256GB - Ezüst -(2025) - 3 év gari - MAGYAR
- BESZÁMÍTÁS! CSAK KIPRÓBÁLT! ASUS ROG Ally X (2024) 1TB kézikonzol garanciával hibátlan működéssel
Állásajánlatok
Cég: PC Trade Systems Kft.
Város: Szeged
Cég: Promenade Publishing House Kft.
Város: Budapest