Strutture classi e oggetti

Slides:



Advertisements
Presentazioni simili
Preincremento e PostIncremento in C++
Advertisements

Puntatori in C e C++.
Struttura di un programma
Linguaggio C++ Operatori – numeri pseudocasuali - costanti.
Numeri casuali.
Procedure e funzioni In linguaggio C.
Introduzione ad Array e Funzioni 2IC/2ID – a. s.2012/13.
Generazione di numeri casuali in Dev C++
Introduzione al linguaggio C Dr. Francesco Fabozzi Corso di Informatica.
Le funzioni.
Costruzione di Interfacce Lezione 10 Dal Java al C++ parte 1
2000 Prentice Hall, Inc. All rights reserved. 1 Capitolo 6: Classi e astrazione dati 1.Introduzione 2.Definizione delle strutture 3.Accedere ai membri.
Lab. Calc. AA 2005/061 Classi. Lab. Calc. AA 2005/062 C e C++ Fino a questo punto abbiamo introdotto gli elementi base di qualsiasi linguaggio di programmazione,
Il main program Ogni programma in C++, per essere eseguibile, deve contenere una funzione main() da cui l’esecuzione comincerà main() deve avere un tipo.
Struct, enum, Puntatori e Array dinamici
Elementi di programmazione ad oggetti a. a. 2009/2010 Corso di Laurea Magistrale in Ingegneria Elettronica Docente: Mauro Mazzieri, Dipartimento di Ingegneria.
Elementi di programmazione ad oggetti a. a. 2009/2010 Corso di Laurea Magistrale in Ingegneria Elettronica Docente: Mauro Mazzieri, Dipartimento di Ingegneria.
Università degli Studi di BresciaA.A. 2012/2013 Fondamenti di Programmazione Docente: Alessandro SaettiA.A. 2012/2013 Università degli Studi di Brescia.
void binario(int n); …………………
Creazione progetto in C++/DEV
Passaggio di parametri per indirizzo
Corso di Programmazione Grafica e Laboratorio Daniele Marini
Fondamenti di Informatica 2 Ingegneria Informatica Docente: Giovanni Macchia a.a
CORSO DI PROGRAMMAZIONE II
Procedure e funzioni In linguaggio C.
Lezione I Alessandro Dal Palu’ Laboratorio di Programmazione.
Copyright © Istituto Italiano Edizioni Atlas
Le funzioni in C++. Introduzione  Spesso alcuni gruppi di operazioni vengono ripetute in diverse parti all’interno del medesimo programma  Si pensi.
1 Elementi DI INFORMATICA Università degli Studi di Cagliari Corso di Laurea in Ingegneria Elettronica Linguaggio C A.A. 2011/2012
Fondamenti di Informatica A - Massimo Bertozzi I PUNTATORI.
PRIMI CONCETTI ESEMPI INTRODUTTIVI DEFINIZIONI INTRODUZIONE ALLE FUNZIONI.
Fondamenti di Informatica A - Massimo Bertozzi LE RAPPRESENTAZIONI CONCATENATE.
.  I tipi di dati non primitivi sono gli array, le struct e le union.  Gli array sono degli aggregati di variabili dello stesso tipo.  La dichiarazione.
Ereditarietà Uno dei principi della programmazione orientata agli oggetti (OOP) è il riuso Le classi dovrebbero essere progettate come componenti riutilizzabili.
© 2007 SEI-Società Editrice Internazionale, Apogeo
Java World Introduzione.
Introduzione al linguaggio C
Strutture 1 Gli array permettono di raccogliere sotto un unico nome più variabili omogenee e sono solitamente utilizzati quando bisogna operare su più.
Struct, enum, Puntatori e Array dinamici
FUNZIONI MATLAB/OCTAVE
Il linguaggio C Strutture Moreno Marzolla
C/C++.
Array n-dimensionali e tipi di dati strutturati
Record.
L’AMBIENTE CODE BLOCKS E L’IO
Tipo di dato: array Un array è un tipo di dato usato per memorizzare una collezione di variabili dello stesso tipo. Per memorizzare una collezione di 7.
FONDAMENTI DI INFORMATICA II Ingegneria Gestionale a. a
Programmazione e Laboratorio di Programmazione
© 2007 SEI-Società Editrice Internazionale, Apogeo
Struttura di un programma
Esercitazioni di C++ 31 dicembre 2018 Claudio Rocchini IGMI.
Oggetti Java.
Struttura di un programma
Copia di oggetti il costruttore di copia ha le stesse particolarità della signature di un costruttore ordinario; il primo parametro è una reference ad.
LA RETTA.
APPUNTI SUL LINGUAGGIO C
Gestione di un ristorante
APPUNTI SUL LINGUAGGIO C Esercizi sugli array e strutture
La struttura dei primi programma in C
APPUNTI SUL LINGUAGGIO C
Array n-dimensionali e tipi di dati strutturati
Programmazione e Laboratorio di Programmazione
Operatori – numeri pseudocasuali - costanti
Java Introduzione.
Passaggio di parametri per indirizzo
I sistemi di equazioni di I grado
Programmazione e Laboratorio di Programmazione
LA PARABOLA Esercitazioni Dott.ssa Badiglio S..
Programmazione Procedurale
Corso di programmazione, Simulazione, ROOT, code, ecc. ecc.
Transcript della presentazione:

Strutture classi e oggetti Dal C al C++ Una piccola introduzione

Definizione di strutture Raggruppamento di variabili dello stesso tipo racchiuse nello stesso nome Es di dichiarazione di una struttura: struct date{ char mese[10]; int giorno; int anno}; In generale: struct nomestringa{ elenco membri};

Inizializzazione di una struttura Per dichiarare un elemento particolare, una struttura particolare: struct date data1; struct date data2; …………………. Per accedere ai membri della struttura: data1.mese[10]; // mese della struttura data1 data2.mese[10]; // mese della struttura data2 data1.giorno; //giorno della struttura data1 data2.giorno; //giorno della struttura data2 ………………………………

Secondo metodo per dichiarare una struttura struct date{ char mese[10]; int giorno; int anno} date1, date2; Oltre alla struttura date, si inizializzano anche date1 e date2 Per accedere ai membri, si utilizza lo stesso metodo della slide precedente

Esempio: distanza tra due punti int main(void){ int dx,dy; float distanza; struct punto{ int x,y}; struct punto A; struct punto B; printf(“Inserisci le coordinate del punto A e del punto B”); scanf(“%d %d %d %d”, &A.x, &A.y, B.x, B.y); dx=A.x-B.x; d.y=A.y-B.y; distanza=sqrt(d.x*d.x+d.y*d.y); printf(“%f”,distanza);}

Dichiarazione di una struttura La struttura è un insieme di dati raccolti secondo una determinata logica Come tutte le variabili, può essere dichiarata localmente o globalmente Se in programma ci sono delle function che utilizzano i membri della struttura, la struttura deve essere dichiarata globalmente fuori dal main

Classi e oggetti La classe è la definizione di un tipo di variabile che racchiude sia i dati (membri) che il codice, le funzioni (metodi) È quindi, un elenco di membri di tipo differente che di metodi Un oggetto è un caso particolare di oggetti Esempio: la classe di alunni è catratterizzata dai seguenti membri: voti in storia, matematica..; altezza dei ragazzi; data di nascita; luogo di nascita. I membri sono: fa i compiti, arriva in orario a scuola….. L’oggetto è il singolo allievo Gennaro, Maria… Si dice che l’oggetto è l’istanza della classe

Le classi e le strutture Una classe si dichiara con class allo stesso modo della dichiarazione di una struttura Classe e struttura sono fondamentalmente la stessa cosa; la differenza essenziale è che i membri di una struttura sono sempre pubblici mentre quelli di una classe privati

Le classi I membri e i metodi di una classe possono essere: Public, accessibili all’esterno Private, non accessibili all’esterno Protect, protetti

Dichiarazione di una classe Supponiamo di voler dichiarare la classe dog class dog{ public: char razza[20]; char color[10]; int eta; int peso; };

Esempio completo # include <iostream> using namespace std; class dog{ public: char razza[20]; char color[10]; int eta; int peso; }; int main(){ dog rintintin; cout<<“inserisci la razza, il colore, l’età e il peso di rintintin\n”; cin>>rintintin.razza[]>>rintintn.color[]>>rintintin.eta>>rintintin.peso; return 0;}

IEsempio con i metodi Esempio punto su assi cartesiani e distanza dall’origine # include <iostream> using namespace std; class punto{ int x,y; public: float dist(int a, int b){ float distanza; distanza=sqrt(a*a+b*b); return distanza;} }; int main(){ punto a, b; cin>>a.x>>a.y>>b.x>>b.y; cout<<a.dintanza(x,y); return 0;}

II Esempio con i metodi I metodi possono essere dichiarati solo nella classe e definiti fuori. Rifacciamo lo stesso esempio di prima ma definiamo i metodi fuori la classe # include <iostream> using namespace std; class punto{ int x,y; public: float dist(int a, int b); }; float punto::dist(int a, int b){ float distanza; distanza=sqrt(a*a+b*b); return distanza;} int main(){ punto a, b; cin>>a.x>>a.y>>b.x>>b.y; cout<<a.dintanza(x,y); return 0;}

esempio classe in un file .h class cliente { public: char nome[20]; char cognome[20]; char indirizzo[30]; void ins_nome( ); void ins_cognome( ); void ins_indirizzo( ); };

Main #include <iostream.h> include "cliente.h" void cliente::ins_nome( ){ cout << Inserisci il nome del cliete"; cin >> nome; } void cliente::ins_cognome( ) {cout << Inserisci il cognome del cliente "; cin >> cognome; void cliente::ins_indirizzo( ) {cout << Inserisci l' indirizzo del cliente: "; cin >> indirizzo; main() { cliente cliente1; cliente1.ins_nome( ); cliente1.ins_cognome( ); cliente1.ins_indirizzo( ); cout << "Il nome del cliente è: " << cliente1.nome << “\n”; cout << "Il cognome del cliente è: " << cliente1.cognome << “\”; cout << "L' indirizzo del cliente è: " << cliente1.indirizzo << endl;