Kateri način se vam zdi najboljši?

Moderator: tilz0R

Kateri način se vam zdi najboljši?

#define
13
87%
__inline
0
Brez glasov
template
2
13%
 
Skupaj glasov : 15

Kateri način se vam zdi najboljši?

OdgovorNapisal/-a Kroko » 16 Mar 2018, 17:56

Koda: Izberi vse
#define MAX(a,b) ((a) < (b) ? (b) : (a))

Koda: Izberi vse
__inline int max(int a, int b) { return (a < b) ? b : a; }

Koda: Izberi vse
template <class T> const T& max(const T& a, const T& b) {  return (a < b) ? b : a; }
http://www.planet-cnc.comKroko was here!
Uporabniški avatar
Kroko
 
Prispevkov: 3816
Pridružen: 14 Jan 2015, 12:12
Kraj: Ljubljana
Zahvalil se je: 610 krat
Prejel zahvalo: 1218 krat
Uporabnika povabil: Vrtni palček
Število neizkoriščenih povabil: 223

Re: Kateri način se vam zdi najboljši?

OdgovorNapisal/-a tilz0R » 16 Mar 2018, 18:18

Samo define opcija je standard C, zato tale.
"Words come easy, when they're true!"
Robbie Williams, Gary Barlow
Moj nickname je tilz[NULA]R.
Uporabniški avatar
tilz0R
 
Prispevkov: 1324
Pridružen: 18 Jan 2015, 00:12
Kraj: Črnomelj
Zahvalil se je: 179 krat
Prejel zahvalo: 322 krat
Uporabnika povabil: s56rga
Število neizkoriščenih povabil: 255

Re: Kateri način se vam zdi najboljši?

OdgovorNapisal/-a gumby » 16 Mar 2018, 18:38

#define je praktičen, je pa treba imeti v glavi skrite pasti, ki jih za seboj potegne.
inline verzija je "čista", ampak je omejena na samo en tip (torej je treba imet cel kup takih funkcij).
template je pa omejen na C++.
my brain hurts
Uporabniški avatar
gumby
 
Prispevkov: 1968
Pridružen: 14 Jan 2015, 19:49
Kraj: Lendava
Zahvalil se je: 89 krat
Prejel zahvalo: 431 krat
Uporabnika povabil: Vrtni palček
Število neizkoriščenih povabil: 50


Vrni se na C in sorodni jeziki

Kdo je na strani

Po forumu brska: 0 registriranih uporabnikov in 1 gost