24/05/2018, 21:55

Phạm vi hoạt động của biến

≅ Trong C# biến và hàm phải được khai báo bên trong một lớp. Những biến được khai báo bên trong một lớp và bên ngoài các hàm(trong lập trình hướng đối tượng(OOP) các biến đó gọi là dữ liệu của lớp, các hàm được gọi là các phương thức, tạm gọi các ...

≅ Trong C# biến và hàm phải được khai báo bên trong một lớp. Những biến được khai báo bên trong một lớp và bên ngoài các hàm(trong lập trình hướng đối tượng(OOP) các biến đó gọi là dữ liệu của lớp, các hàm được gọi là các phương thức, tạm gọi các biến này là biến toàn cục trong một lớp) các biến này có phạm vi tác động trong toàn bộ lớp nghĩa là các hàm bên trong lớp có thể truy xuất được. Khi khai báo các biến này ta phải thêm từ khoá static(việc này sẽ được tìm hiểu kỹ trong lập trình hướng đối tượng) và nó được cấp phát bộ nhớ ngay từ khi ta thực hiện chương trình

Ví dụ: Các biến static double x; và static int n; trong ví dụ trên có phạm vi tác động trong toàn bộ lớp, nghĩa là tất cả các phương thức trong cùng lớp đều có thể truy nhập.

Chú ý: Thông thường những biến dùng chung cho các hàm trong cùng một lớp thì ta hay khai báo toàn cục

≅ Những biến được khai báo bên trong một hàm được gọi là biến cục bộ, phạm vi hoạt động của các biến này chỉ ở bên trong hàm mà nó được khai báo, các biến này chỉ được cấp phát bộ nhớ khi hàm mà có chứa các biến này được gọi ra thực hiện và khi thực hiên xong thì nó sẽ bị giải phóng khỏi bộ nhớ.

Ví dụ: Các biến double s; và int i; trong ví dụ trên

Chú ý: Những biến dùng để cài đặt thuật toán cho một hàm thì ta nên khai báo biến này là biến cục bộ, nếu biến cục bộ và biến toàn cục mà trùng tên nhau thì máy sẽ ưu tiến biến cục bộ trước

≅ Các biến được khai báo bên trong hai dấu “(“ và ” )” sau tên hàm được gọi là các đối của hàm. Trong C# có các kiểu đối sau:

 Đối kiểu tham trị

Kiểudữliệu TênHàm(Kiểudữ liệu Tênđối1,Kiểudữ liệu Tênđối1,…)

Ví dụ: static double Mu(double x,int n)

 Đối kiểu tham chiếu

Kiểudữliệu TênHàm(ref Kiểudữ liệu Tênđối1,

ref Kiểudữ liệu Tênđối1,…)

Ví dụ: static void HoanVi(ref int x, ref int y)

 Đối kiểu tham chiếu chỉ nhận giá trị

Kiểudữliệu TênHàm(out Kiểudữ liệu Tênđối1,

out Kiểudữ liệu Tênđối1,…)

Ví dụ: static void Ham(int x,int y, out int phannguyenm, out int phandu)

Các đối của hàm có nguyên tắc hoạt động giống như biến cục bộ. Khi xây dựng một hàm chúng ta phải biết được hàm của chúng ta cần bao nhiêu đối, đối đó thuộc kiểu gì?

0