Autore Topic: [RISOLTO] Creare struttura  (Letto 3192 volte)

Michele

  • Visitatore
[RISOLTO] Creare struttura
« il: 02 Ottobre 2009, 22:21:50 »
Ho dato un occhita alla documentazione ma non riesco a trovare questa informazione

vorrei creare una struttura composta da variabili stringa e integer del tipo

struttura strutt

stringa1 as string
stringa2 as string
valore1 as integer

vorrei poi creare un array di questa struttura

dim miastruttura as struct[10]

Chiedo troppo?

Grazie

Offline fsurfing

  • Moderatore
  • Senatore Gambero
  • *****
  • Post: 2.484
    • Mostra profilo
Re: creare struttura
« Risposta #1 il: 02 Ottobre 2009, 22:28:05 »
puoi farlo tramite una classe

guarda nel wiki le pagine scritte da md93..

Offline Ceskho

  • Amministratore
  • Senatore Gambero
  • *****
  • Post: 3.778
  • Vi Veri Veniversum Vivus Vici
    • Mostra profilo
    • Pagina Personale
Re: creare struttura
« Risposta #2 il: 02 Ottobre 2009, 23:32:14 »
Per l'appunto esistono le classi che sono anche più potenti delle strutture perchè permettono di implementare anche delle funzioni.

Offline md9327

  • Moderatore
  • Senatore Gambero
  • *****
  • Post: 2.840
    • Mostra profilo
Re: creare struttura
« Risposta #3 il: 03 Ottobre 2009, 01:44:49 »
Parlo da vecchi programmatore C/C++...

Le strutture sono una forma molto usata, specialmente in C, per definire una collezione di elementi di diverso tipo. Questo perchè il C permette un capillare controllo della memoria che, a differenza di linguaggi più evoluti, corrisponde all'avere una maggiore efficenza, oltre ad altre cose.

Nei linguaggi moderni, con l'avvento della logica ad oggetti, certe definizioni sono venute quasi a scomparire, e questo è vero per la stragande maggioranza delle applicazioni (in genere gestionali), mentre in alcune nicchie si propende più verso un risparmio delle risorse a favore della velocità.

Comunque, in Gambas, utilizzi sempre e comunque oggetti e classi, come già dichiarato dai miei due colleghi... :-P

Michele

  • Visitatore
Re: creare struttura
« Risposta #4 il: 03 Ottobre 2009, 12:12:01 »
Non è che mi postate un esempio?
sono pricipiante in gambas

anzi

sono un programmatore poco IN..GAMBAs

Grazie per le risposte

mik

Offline fsurfing

  • Moderatore
  • Senatore Gambero
  • *****
  • Post: 2.484
    • Mostra profilo
Re: creare struttura
« Risposta #5 il: 03 Ottobre 2009, 12:23:36 »
se vuoi ti scrivo un esempio, però premetto che io non sono un programmatore professionista e quindi il mio codice non soddisferà i canoni della programmazione ad oggetti ma sarà comunque funzionante

Michele

  • Visitatore
Re: creare struttura
« Risposta #6 il: 03 Ottobre 2009, 12:26:33 »
non è bello ciò che è bello
ma è bello ciò che funziona!

manda pure

Offline fsurfing

  • Moderatore
  • Senatore Gambero
  • *****
  • Post: 2.484
    • Mostra profilo
Re: creare struttura
« Risposta #7 il: 03 Ottobre 2009, 12:54:02 »
detto e fatto eccoti l' esempio.

prego chiunque se ne intendesse di + di oggetti e classi di modificare questo esempio nel caso trovassero qualche inesattezza,  in modo da ottenere un programmino semplice e intuibile per tutti.

Michele

  • Visitatore
Re: creare struttura
« Risposta #8 il: 03 Ottobre 2009, 16:49:45 »
L'esempio è molto chiaro
Penso proprio di aver capito il concetto
Grazie mille

Offline Ceskho

  • Amministratore
  • Senatore Gambero
  • *****
  • Post: 3.778
  • Vi Veri Veniversum Vivus Vici
    • Mostra profilo
    • Pagina Personale
Re: creare struttura
« Risposta #9 il: 03 Ottobre 2009, 18:34:09 »
Ti consiglio di studiare il concetto di classe in forma teorica anche...aldilà del suo uso in gambas...

Le potenzialità di una classe sono davvero notevoli e se ne può fare davvero un buon uso se conosciute bene....

Chiedi ad fsurfing quanti cavalieri riesce a creare con un sola classe ;-)

Michele

  • Visitatore
Re: creare struttura
« Risposta #10 il: 03 Ottobre 2009, 19:10:05 »
Ho letto qualche cosa sulle classi in un corso di c++
anche se poi non ho mai avuto occasione di metterle in pratica
tutta la programmazione orientata agli oggetti deriva da concetto di classe
Giusto?
Comunque tutte le volte che imparo qualche cosa su Gambas mi stupisco di quanto sia elaborato e potente

Una manna per chi, come mè, ha lasciato win e VB e non è un programmatore.

Offline Ceskho

  • Amministratore
  • Senatore Gambero
  • *****
  • Post: 3.778
  • Vi Veri Veniversum Vivus Vici
    • Mostra profilo
    • Pagina Personale
Re: creare struttura
« Risposta #11 il: 04 Ottobre 2009, 01:25:18 »
L'idea di oggetto è strettamente legata al concetto di classe...l'oggetto è una classe.

Basta pensare che ogni oggetto che usi in gambas (Button, textbox, label) non è altro che una classe.

Quando crei un nuovo button, ad esempio, Gambas non fa altro che creare una nuova classe derivata dal button e non fa altro che accedere ai suoi membri mediante la classica sintassi

Button1.text
Button1.width

etc...

Michele

  • Visitatore
Re: creare struttura
« Risposta #12 il: 13 Ottobre 2009, 09:14:06 »
Ritorno sull'argomento
nella form (o classe) dell'esempio ho creato diverse classi matita
come posso fare per renderle visibili in altre form?

praticamente
devo creare un form per l'inserimento di nomi
ogni nome sarà poi una classe con le sue proprietà
il programma poi si svolgerà nella form principale
ma le classi create dovranno essere visibili in tutte le form del progetto

come fare?

Offline fsurfing

  • Moderatore
  • Senatore Gambero
  • *****
  • Post: 2.484
    • Mostra profilo
Re: creare struttura
« Risposta #13 il: 13 Ottobre 2009, 12:24:08 »
se l' array contenente le classi è dichiarato come public lo puoi vedere da tutti i form a patto che nelle proprieta>>>>opzioni di progetto siano abilitati i controlli e i simboli per essere "public"

Offline Ceskho

  • Amministratore
  • Senatore Gambero
  • *****
  • Post: 3.778
  • Vi Veri Veniversum Vivus Vici
    • Mostra profilo
    • Pagina Personale
Re: creare struttura
« Risposta #14 il: 13 Ottobre 2009, 15:25:34 »
Io credo volesse sapere proprio come implementare una classe...in tal caso la sintassi corretta è:

Codice: [Seleziona]
PRIVATE nome_che_userai_nel_codice AS NEW nome_classe