Tổng hợp tài liệu, ebook Công Nghệ Thông Tin tham khảo.
Lưu trữ cây Ví dụ của chúng ta lưu giá trị theo một cách đặc biệt Quy luật lưu trữ dữ liệu trong cây nhị phân Dữ liệu ở cây con bên trái nhỏ hơn dữ liệu gốc Dữ liệu ở cây con bên phải lớn hơn dữ liệu gốc 2 quy tắc trên được áp dụng đệ quy với từng cây con Cây sử dụng cơ chế lưu trữ: Được gọi là cây nhị phân tìm kiếm (Called bin...
47 trang | Chia sẻ: thucuc2301 | Ngày: 24/11/2020 | Lượt xem: 719 | Lượt tải: 0
Những giải pháp đệ quy Chú ý rằng thuật toán tìm kiếm nhị phân thực sự giải quyết vấn đề “tổng quan hơn” Mục tiêu ban đầu: thiết kế hàm để tìm kiếm trong toàn bộ mảng Hàm của chúng ta: cho phép tìm kiếm bất kỳ đoạn con nào của mảng Bằng cách chỉ định hai ranh giới first và last Rất phổ biến khi thiết kế hàm đệ quyTóm tắt Giảm m...
35 trang | Chia sẻ: thucuc2301 | Ngày: 24/11/2020 | Lượt xem: 593 | Lượt tải: 0
Ép kiểu xuống
(Downcasting)
Ép kiểu xuống rất nguy hiểm!
Ép từ kiểu tổ tiên thành kiểu con cháu
Giả sử thông tin được thêm vào
Có thể được thực hiện với dynamic_cast
Pet *ppet;
ppet = new Dog;
Dog *pdog = dynamic_cast
34 trang | Chia sẻ: thucuc2301 | Ngày: 24/11/2020 | Lượt xem: 658 | Lượt tải: 0
Bài tập Định nghĩa lớp Nhân viên (Employee) Private:Tên, Tuổi, Giới Tính, Quốc Tịch Public: void printCheck() Protected:CMTND Định nghĩa hai lớp con kế thừa từ lớp Nhân_Viên Nhân viên được trả lương (SalariedEmployee) Nhân viên bán thời gian, theo giờ (HourlyEmployee) Định nghĩa lại hàm printCheck() riêng của hai lớp conTóm ...
48 trang | Chia sẻ: thucuc2301 | Ngày: 24/11/2020 | Lượt xem: 912 | Lượt tải: 0
Hàm tĩnh Hàm thành viên cũng có thể là tĩnh (static) Nếu không cần thiết truy cập đến dữ liệu của đối tượng Và vẫn phải là thành viên của lớp Hàm tĩnh chỉ có thể dùng dữ liệu tĩnh, gọi hàm tĩnh khác Có thể được gọi bên ngoài lớp chứa hàm đó Từ những đối tượng không thuộc lớp (non-class), vd. Server::getTurn(); Hoặc thông qua đ...
73 trang | Chia sẻ: thucuc2301 | Ngày: 24/11/2020 | Lượt xem: 651 | Lượt tải: 0
Quy tắc test căn bản Viết chương trình đúng Tối giảm hóa lỗi (errors), bugs Đảm bảo tính hợp lệ của dữ liệu Test và debug từng hàm trong chương trình một cách lần lượt Tránh lỗi phân tầng (error-cascading) và kết quả xung đột (conflicting results)Tóm tắt cho phần nạp chồng hàm Tham trị (call-by-value) là những bản sao cục bộ (lo...
59 trang | Chia sẻ: thucuc2301 | Ngày: 24/11/2020 | Lượt xem: 679 | Lượt tải: 0
Namespace
Namespace xác định một tập các tên được định
nghĩa
Ví dụ:
#include
34 trang | Chia sẻ: thucuc2301 | Ngày: 24/11/2020 | Lượt xem: 715 | Lượt tải: 0
Nội dung môn học Bài 1: Giới thiệu về C++ Bài 2: Các cấu trúc điều khiển, mảng và con trỏ Bài 3: Hàm và nạp chồng hàm Bài 4: Cấu trúc và lớp Bài 5: Ôn tập Bài 6: Nạp chồng toán tử và kế thừa Bài 7: Khuôn mẫu (Template) và thư viện chuẩn (STL) Bài 8: Hàm ảo và đa hình Bài 9: Đệ quy Bài 10: Các kiểu dữ liệu trừu tượng : ...
6 trang | Chia sẻ: thucuc2301 | Ngày: 24/11/2020 | Lượt xem: 641 | Lượt tải: 0
Macro trong makefile Macro cho phép viết makefile một cách tổng quát và mềm dẽo hơn, tương tự như việc sử dụng biến và hằng trong lập trình – Có nhiều tùy chọn cho việc biên dịch chương trình: phiên bản debug, phiên bản phát hành – Thay đổi trình biên dịch tùy thuộc vào hệ thống Đinh nghĩa macro: MACRONAME=Value Truy cập giá trị: $(MA...
29 trang | Chia sẻ: thucuc2301 | Ngày: 24/11/2020 | Lượt xem: 713 | Lượt tải: 0
Advanced Package Tool (tt) • Cập nhật danh sách các gói trên repositories mô tả trong /etc/apt/sources.list – sudo apt-get update • Nâng cấp các gói đã cài đặt lên version mới nhất – sudo apt-get upgrade • Nâng cấp phiên bản một cách thông minh – sudo apt-get dist-upgrade • Xem hướng dẫn – sudo apt-get help
12 trang | Chia sẻ: thucuc2301 | Ngày: 24/11/2020 | Lượt xem: 684 | Lượt tải: 0