Evgenios1 Δημοσ. 22 Μαρτίου 2010 Δημοσ. 22 Μαρτίου 2010 Τι ακριβος κανει αυτο το function define ? Εχω καταλαβει οτι πχ αν εχουμε το παρακατω >__inline int plus(int,int); int _tmain(int argc, _TCHAR* argv[]) { int a=1,b=1,result; result = plus(a,; return 0; } __inline int plus(int i,int i1) { return i + i1; } ο compiler θα το δει σαν > int _tmain(int argc, _TCHAR* argv[]) { int a=1,b=1,result; result = a+b; return 0; } Κανω λαθος?
godlike Δημοσ. 22 Μαρτίου 2010 Δημοσ. 22 Μαρτίου 2010 Ακριβώς αυτό κάνει αν και είναι στην ευχέρεια του compiler αν θα το ακολουθήσει ή όχι. Γενικά όμως το σωστό είναι inline σκέτο. Καλό είναι να γράφουμε ANSI C++ και όχι M$ C++
bxenos Δημοσ. 23 Μαρτίου 2010 Δημοσ. 23 Μαρτίου 2010 To inline υπάρχει στο πρότυπο C99 της C. Δεν νομίζω να ήταν στάνταρντ μέχρι και το C89. Παρ'ολα αυτά και ο gcc και η ms, το υποστήριζαν ως __inline. http://gcc.gnu.org/ml/gcc/2000-08/msg00185.html
Προτεινόμενες αναρτήσεις
Αρχειοθετημένο
Αυτό το θέμα έχει αρχειοθετηθεί και είναι κλειστό για περαιτέρω απαντήσεις.