函数式编程 - 记录
记录是一种用于存储固定数量元素的数据结构。 类似于C语言中的结构体。 在编译时,其表达式被转换为元组表达式。
如何创建记录?
关键字"record"用于创建指定记录名称及其字段的记录。 其语法如下 −
record(recodname, {field1, field2, . . fieldn})
将值插入记录的语法是 −
#recordname {fieldName1 = value1, fieldName2 = value2 .. fieldNamen = valuen}
使用 Erlang 创建记录的程序
在下面的示例中,我们创建了一条名为 student 的记录,该记录具有两个字段,即 sname 和 sid。
-module(helloworld). -export([start/0]). -record(student, {sname = "", sid}). start() -> S = #student{sname = "Sachin",sid = 5}.
使用 C++ 创建记录的程序
以下示例演示如何使用 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(一种函数式编程语言)访问记录值 −
-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++ 访问记录值 −
#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<<" "<<S.sname; return 0; }
它将产生以下输出 −
5 Sachin
可以通过将值更改为特定字段,然后将该记录分配给新的变量名称来更新记录值。 看一下下面的两个示例,了解如何使用面向对象和函数式编程语言来完成它。
使用 Erlang 更新记录值的程序
以下程序展示了如何使用 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]).
它将产生以下输出 −
5 "Jonny"
使用 C++ 更新记录值的程序
以下程序展示了如何使用 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<<" "<<S.sid; cout<<" "<< "value after updating"<<" "; S.sid = 10; cout<<S.sname<<" "<<S.sid; return 0; }
它将产生以下输出 −
Jonny 5 value after updating Jonny 10