Microsoft Word - Bai 10.3.doc

4 3 0
Microsoft Word - Bai 10.3.doc

Đang tải... (xem toàn văn)

Thông tin tài liệu

Microsoft Word Bai 10 3 doc Trang 1 MÔN LẬP TRÌNH HƯỚNG ĐỐI TƯỢNG Bài thực hành số 10 3 Xây dựng class tổng quát hóa “Stack các tham khảo” I Mục tiêu Giúp SV làm quen với việc xây dựng class tổng quát[.]

Trang MƠN : LẬP TRÌNH HƯỚNG ĐỐI TƯỢNG Bài thực hành số 10.3 : Xây dựng class tổng quát hóa “Stack tham khảo” I Mục tiêu : ƒ Giúp SV làm quen với việc xây dựng class tổng quát hóa có dùng tham khảo thuộc kiểu II Nội dung : ƒ Viết code miêu tả class tổng quát hóa “Stack tham khảo bất kỳ” cung cấp tác vụ push() pop() ₫ể cất/lấy lại tham khảo ₫ỉnh stack ƒ Viết chương trình nhỏ thử dùng class tổng quát hóa “Stack tham khảo bất kỳ” ₫ể tạo tự ₫ộng class Stack ₫ối tượng nguyên Stack ₫ối tượng thực, thử sử dụng class cụ thể III Chuẩn ₫ầu : ƒ Sinh viên nắm vững việc ₫ặc tả class tổng quát hóa có dùng tham khảo thuộc kiểu IV Qui trình : Chạy VS Net, chọn menu File.Open.Project ₫ể hiển thị cửa sổ duyệt file Duyệt tìm file *.sln quản lý Project "AnyStackApp" có sẵn từ thực hành 8.2 ₫ể mở lại Project Ấn phải chuột vào phần tử gốc Project cửa sổ Solution Explorer, chọn option Add.Class, ₫ặt tên RefStack.cs ₫ể tạo file ₫ặc tả class tổng quát hóa RefStack Khi cửa sổ hiển thị mã nguồn class RefStack hiển thị, copy code ₫ã viết class IntStack, dán code vào thân RefStack, hiệu chỉnh lại sau (phần màu ₫ỏ phần thay ₫ổi so với class IntStack) : //₫ịnh nghĩa class tổng quát hóa : Stack giá trị thuộc kiểu T namespace AnyStackApp { public class RefStack where T : class { private T[] data; //danh sách phần tử stack private int top; // số phần tử ₫ỉnh stack private int max; // số lượng max hành stack // khai báo miêu tả số lượng phần tử cần thêm lần thiếu stack private int GROWBY = 4; //hàm constrcutor public RefStack () { top = 0; max =GROWBY; data = (T[])new T[max]; } //hàm push phần tử vào ₫ỉnh public bool push(T newVal) { T[] newdata; if (top==max) { //nếu ₫ầy stack //xin cấp phát lại vùng nhớ lớn GROWBY phần tử sơ với stack hành try { newdata = (T[])new T[GROWBY+max]; } catch (Exception e){ //System.out.println("He thong het cho roi!!!"); return false; } Trang //di chuyển stack hành stack for (int i = 0; i

Ngày đăng: 04/01/2023, 10:22

Tài liệu cùng người dùng

  • Đang cập nhật ...

Tài liệu liên quan