Programmation fonctionnelle - Enregistrements
Un enregistrement est une structure de données permettant de stocker un nombre fixe d'éléments. C'est similaire à une structure en langage C. Au moment de la compilation, ses expressions sont traduites en expressions de tuple.
Comment créer un enregistrement?
Le mot-clé 'enregistrement' est utilisé pour créer des enregistrements spécifiés avec le nom d'enregistrement et ses champs. Sa syntaxe est la suivante -
record(recodname, {field1, field2, . . fieldn})
La syntaxe pour insérer des valeurs dans l'enregistrement est -
#recordname {fieldName1 = value1, fieldName2 = value2 .. fieldNamen = valuen}
Programme pour créer des enregistrements en utilisant Erlang
Dans l'exemple suivant, nous avons créé un enregistrement de nom student ayant deux champs, à savoir, sname et sid.
-module(helloworld).
-export([start/0]).
-record(student, {sname = "", sid}).
start() ->
S = #student{sname = "Sachin",sid = 5}.
Programme pour créer des enregistrements en C ++
L'exemple suivant montre comment créer des enregistrements à l'aide de C ++, qui est un langage de programmation orienté objet -
#include<iostream>
#include<string>
using namespace std;
class student {
public:
string sname;
int sid;
15
};
int main() {
student S;
S.sname = "Sachin";
S.sid = 5;
return 0;
}
Programme pour accéder aux valeurs d'enregistrement en utilisant Erlang
Le programme suivant montre comment accéder aux valeurs d'enregistrement en utilisant Erlang, qui est un langage de programmation fonctionnel -
-module(helloworld).
-export([start/0]).
-record(student, {sname = "", sid}).
start() ->
S = #student{sname = "Sachin",sid = 5},
io:fwrite("~p~n",[S#student.sid]),
io:fwrite("~p~n",[S#student.sname]).
Il produira la sortie suivante -
5
"Sachin"
Programme pour accéder aux valeurs d'enregistrement en utilisant C ++
Le programme suivant montre comment accéder aux valeurs d'enregistrement à l'aide de C ++ -
#include<iostream>
#include<string>
using namespace std;
class student {
public:
string sname;
int sid;
};
int main() {
student S;
S.sname = "Sachin";
S.sid = 5;
cout<<S.sid<<"\n"<<S.sname;
return 0;
}
Il produira la sortie suivante -
5
Sachin
Les valeurs d'enregistrement peuvent être mises à jour en modifiant la valeur d'un champ particulier, puis en affectant cet enregistrement à un nouveau nom de variable. Jetez un œil aux deux exemples suivants pour comprendre comment cela est fait à l'aide de langages de programmation orientés objet et fonctionnels.
Programme pour mettre à jour les valeurs d'enregistrement en utilisant Erlang
Le programme suivant montre comment mettre à jour les valeurs d'enregistrement à l'aide d'Erlang -
-module(helloworld).
-export([start/0]).
-record(student, {sname = "", sid}).
start() ->
S = #student{sname = "Sachin",sid = 5},
S1 = S#student{sname = "Jonny"},
io:fwrite("~p~n",[S1#student.sid]),
io:fwrite("~p~n",[S1#student.sname]).
Il produira la sortie suivante -
5
"Jonny"
Programme pour mettre à jour les valeurs d'enregistrement en utilisant C ++
Le programme suivant montre comment mettre à jour les valeurs d'enregistrement à l'aide de C ++ -
#include<iostream>
#include<string>
using namespace std;
class student {
public:
string sname;
int sid;
};
int main() {
student S;
S.sname = "Jonny";
S.sid = 5;
cout<<S.sname<<"\n"<<S.sid;
cout<<"\n"<< "value after updating"<<"\n";
S.sid = 10;
cout<<S.sname<<"\n"<<S.sid;
return 0;
}
Il produira la sortie suivante -
Jonny
5
value after updating
Jonny
10