Учебники

Функциональное программирование — записи

Запись — это структура данных для хранения фиксированного количества элементов. Это похоже на структуру на языке Си. Во время компиляции его выражения переводятся в выражения кортежей.

Как создать запись?

Ключевое слово «запись» используется для создания записей, указанных с именем записи и ее полями. Его синтаксис выглядит следующим образом —

record(recodname, {field1, field2, . . fieldn})

Синтаксис для вставки значений в запись:

#recordname {fieldName1 = value1, fieldName2 = value2 .. fieldNamen = valuen}

Программа для создания записей с использованием Erlang

В следующем примере мы создали запись имени студента, имеющую два поля: sname и sid .

-module(helloworld).  
-export([start/0]).  
-record(student, {sname = "", sid}).   

start() ->  
   S = #student{sname = "Sachin",sid = 5}. 

Программа для создания записей с использованием C ++

В следующем примере показано, как создавать записи с использованием C ++, который является объектно-ориентированным языком программирования.

#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;  
} 

Программа для доступа к значениям записи, используя Erlang

Следующая программа показывает, как получить доступ к значениям записи, используя Erlang, который является функциональным языком программирования.

Live Demo

-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]). 

Это даст следующий результат —

5 
"Sachin"

Программа для доступа к значениям записи с использованием C ++

Следующая программа показывает, как получить доступ к значениям записи с помощью C ++ —

Live Demo

#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; 
} 

Это даст следующий результат —

5 
Sachin 

Значения записи можно обновить, изменив значение на определенное поле и затем присвоив эту запись новому имени переменной. Взгляните на следующие два примера, чтобы понять, как это делается с использованием объектно-ориентированного и функционального языков программирования.

Программа для обновления значений записей с использованием Erlang

Следующая программа показывает, как обновить значения записей с помощью Erlang —

Live Demo

-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]). 

Это даст следующий результат —

5
"Jonny" 

Программа для обновления значений записей с использованием C ++

Следующая программа показывает, как обновить значения записей с помощью C ++ —

Live Demo

#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; 
}

Это даст следующий результат —