Thêm
Chỉ cần tìm thấy hai câu hỏi liên quan
/programming//a/2582804/156458
Trong các ngôn ngữ lập trình, từ Ngôn ngữ lập trình của Michael Scott
Nói chung, một giá trị trong ngôn ngữ lập trình được cho là có trạng thái lớp đầu tiên nếu nó có thể được truyền dưới dạng tham số, được trả về từ chương trình con hoặc được gán vào một biến. Các loại đơn giản như số nguyên và ký tự là giá trị hạng nhất trong hầu hết các ngôn ngữ lập trình. Ngược lại, giá trị của lớp thứ hai có thể được truyền qua như một tham số, nhưng không được trả về từ một chương trình con hoặc được gán vào một biến, và giá trị này của lớp thứ ba có thể được chuyển qua như một tham số.
Nhãn là giá trị hạng ba trong hầu hết các ngôn ngữ lập trình, nhưng giá trị hạng hai trong Algol. Chương trình con hiển thị nhiều biến thể nhất. Chúng là các giá trị hạng nhất trong tất cả các ngôn ngữ lập trình chức năng và hầu hết các ngôn ngữ script. Chúng cũng là các giá trị hạng nhất trong C # và, với một số hạn chế, trong một số ngôn ngữ bắt buộc khác, bao gồm Fortran, Modula-2 và -3, Ada 95, C và C ++. 11 Chúng là các giá trị hạng hai trong hầu hết các ngôn ngữ mệnh lệnh khác và các giá trị hạng ba trong Ada 83.
Nền tảng toán học cho các giá trị lớp thứ nhất / thứ hai / thứ ba trong các ngôn ngữ lập trình là gì?
Thuật ngữ nhắc nhở tôi về logic thứ tự / thứ hai, nhưng chúng có liên quan không?
Dường như với tôi rằng sự khác biệt giữa chúng là trường hợp cụ thể mà một giá trị có thể được sử dụng
- thông qua như một tham số,
- trở về từ một chương trình con, hoặc
- gán vào một biến.
Tại sao các trường hợp cụ thể quan trọng, trong khi các trường hợp khác không được đề cập?
Cảm ơn.