Τετάρτη, 2 Δεκεμβρίου 2020

Αναθεώρηση 11, Έκδοση 10

 Σε αυτήν την αναθεώρηση διόρθωσα δυο λάθη, και έβαλα δυο αντικείμενα για χειρισμό json αρχείων. Είχα γράψει έναν parser για Json αρχεία, σε M2000, αλλά τώρα έγραψα έναν πολύ γρήγορο σε VB6, με δυο αντικείμενα, ανάλογα με τι ξεκινάει το αρχείο (πίνακας ή αντικείμενο). Αν δεν ξεκινάει με κάτι από αυτά τότε είναι η λεγόμενη json value, και για να την πάρουμε σωστά πρέπει να την περάσουμε σε πίνακα, δηλαδή να βάλουμε τα "[" και "]" και να την χειριστούμε ως το στοιχείο με το δείκτη 0.

Ένα λάθος είχε να κάνει με το τμήμα Tuple στο info. Το άλλο ήταν ένα λογικό λάθος βάσει σχεδιασμού. Αν έχουμε ορίσει την Α()  ως ιδιότητα αρχείου COM (εσωτερικό ή εξωτερικό δεν έχει σημασία) τότε μια δήλωση α(1)=α(1) δούλευε αλλά  λόγω ότι έπαιρνε το δείκτη 1 δεξιά και τον εφάρμοζε στην αριστερή έκφραση. Τώρα δουλεύει σωστά γιατί κρατάω το δείκτη αριστερά και όταν εκτελεστεί η ιδιότητα δεξιά τότε εφαρμόζω το δείκτη. Το α(1) μοιάζει με πίνακα αλλά δεν είναι εδώ, και ο δείκτης μπορεί να είναι αλφαριθμητικό (και μάλιστα για την ίδια ιδιότητα μπορεί να χρησιμοποιούνται οποιοδήποτε από τα δύο).. Στους πίνακες δεν έχουμε τέτοιο θέμα γιατί ο διερμηνευτής υπολογίζει τη θέση του στοιχείου και την κρατάει για να την εφαρμόσει στο τέλος.

Στην επόμενη αναθεώρηση, ήδη έχω κάνει την προετοιμασία, θα βάλω την δυνατότητα να χειριζόμαστε ιδιότητες COM αντικειμένων με περισσότερους από έναν δείκτη.

Σε λίγες μέρες....η επόμενη αναθεώρηση!



Δεν υπάρχουν σχόλια:

Δημοσίευση σχολίου