Δημοσιεύτηκε: 26 Ιαν 2012, 16:51
Star_Light έγραψε:
...
να μην βαζω συναρτησεις που να τυπωνουν πραγματα σε βιβλιοθηκες επειδη ο καθενας μπορει να θελει να
τυπωνει τις δικιες του?????
Ναι, έτσι συνηθίζεται (έτσι είναι και το σωστό). Δεν υπάρχει απολύτως κανένας λόγος να αναγκάζεις τον χρήστη της βιβλιοθήκης να βλέπει μηνύματα που δεν έχει ζητήσει ο ίδιος.
Αντίθετα, βάζοντας τις συναρτήσεις να σηματοδοτούν αστοχίες είτε με την τιμή επιστροφής τους, είτε με μια έξτρα παράμετρο (στην οποία θα περνάς ξεχωριστές πληροφορίες για κάθε ξεχωριστό σφάλμα που προκύπτει) είτε και τα 2 μαζί, δίνεις στον χρήστη της βιβλιοθήκης την ελευθερία να διαχειριστεί τα όποια σφάλματα προκύψουν σύμφωνα με τις ανάγκες του κάθε προτζεκ τους.
Αν θες ντε και καλά να τυπώνεις μηνύματα σφάλματος μέσα από τη βιβλιοθήκη, κάνε το μόνο αν κάποια σταθερά της βιβλιοθήκης σου πάρει την τιμή TRUE ή απλά οριστεί. Π.χ. μια σταθερά...
- Κώδικας: Επιλογή όλων
#define VERBOSE
την οποία αν ο χρήστης την ορίσει με τιμή 1 τότε να τυπώνεις μηνύματα (αλλιώς όχι).
@Garrus: ελπίζω χωρίς παρεξήγηση, προσωπικά αρνούμαι να διαβάσω καν κώδικα που αφενός δεν είναι ευανάγνωστος και αφετέρου δεν είναι ολοκληρωμένος ώστε να μπορώ να τον κάνω compile για να ασχοληθώ όταν ευκαιρήσω.