- 17 Sections
- 175 Lessons
- 20 Weeks
Expand all sectionsCollapse all sections
- Chương 0. Chuẩn bị & cài đặt6 ItemsChương này cung cấp cho các bạn những thông tin tiền đề giúp quá trình học tập khóa học được thuận lợi suôn sẻ.
- Chương 1: Nhập môn13 ItemsChương này ta sẽ tìm hiểu những khái niệm và ví dụ trực quan đầu tiên của ngôn ngữ lập trình C++.
- 2.1Bài 1.01. Tạo project, xử lý lỗi thường gặp17 p
- 2.2Bài 1.02. Nhập môn lập trình C++32 p
- 2.3Bài 1.03. Chương trình máy tính đơn giản11 p
- 2.4Bài 1.04. BÀI KIỂM TRA SỐ 110 p
- 2.5Bài 1.05. Các kiểu dữ liệu nền tảng trong C++27 p
- 2.6Bài 1.06. BÀI KIỂM TRA SỐ 210 p
- 2.7Bài 1.07. Các biến trong ngôn ngữ C++28 p
- 2.8Bài 1.08. Các thao tác nhập liệu từ bàn phím19 p
- 2.9Bài 1.09. BÀI KIỂM TRA SỐ 310 p
- 2.10Bài 1.10. Các thao tác số học32 p
- 2.11Bài 1.11. Các thao tác so sánh16 p
- 2.12Bài 1.12. Các thao tác gán giá trị17 p
- 2.13Bài 1.13. BÀI KIỂM TRA SỐ 410 p
- Chương 2: Các cấu trúc lệnh điều khiển16 ItemsChương này ta sẽ điểu khiển chương trình C++ bằng các cấu trúc điều khiển thông dụng. Đây là những thành phần cốt lõi của mọi chương trình, ứng dụng.
- 3.1Bài 2.01. Hướng dẫn chung về project trong Visual Studio18 p
- 3.2Bài 2.02. Cấu trúc điều khiển if-else31 p
- 3.3Bài 2.03. Hướng dẫn vẽ sơ đồ khối24 p
- 3.4Bài 2.04. Cấu trúc điều khiển switch18 p
- 3.5Bài 2.05. Toán tử ba ngôi, toán tử logic19 p
- 3.6Bài 2.06. Sử dụng auto keyword24 p
- 3.7Bài 2.07. Toán tử so sánh ba chiều19 p
- 3.8Bài 2.08. BÀI KIỂM TRA SỐ 2.110 p
- 3.9Bài 2.09. Cấu trúc lặp for25 p
- 3.10Bài 2.10. Cấu trúc lặp while và do-while18 p
- 3.11Bài 2.11. Minh họa tạo menu sử dụng các loại vòng lặp15 p
- 3.12Bài 2.12. Lệnh break, continue, vòng lặp lồng nhau31 p
- 3.13Bài 2.13. Chuẩn bị gì trước khi code?26 p
- 3.14Bài 2.14. Hướng dẫn debugging – gỡ lỗi trong C++ với Visual Studio16 p
- 3.15Bài 2.15. BÀI KIỂM TRA SỐ 2.210 p
- 3.16Bài 2.16. Import file cpp từ bên ngoài vào project2 p
- Chương 3: Các hàm - Functions20 ItemsChương này sẽ cung cấp cho các bạn cách thức tổ chức chương trình C++ sao cho khoa học và có thể tái sử dụng lại mã nguồn tốt nhất.
- 4.1Bài 3.01. Tổng quan về các hàm – functions30 p
- 4.2Bài 3.02. Khai báo nguyên mẫu hàm30 p
- 4.3Bài 3.03. BÀI KIỂM TRA BÀI SỐ 3.110 p
- 4.4Bài 3.04. Giới thiệu một số thư viện trong C++35 p
- 4.5Bài 3.05. Gọi hàm bằng truyền tham chiếu và truyền giá trị23 p
- 4.6Bài 3.06. Tham số mặc định của hàm25 p
- 4.7Bài 3.07. BÀI KIỂM TRA SỐ 3.210 p
- 4.8Bài 3.08. Hàm đệ quy28 p
- 4.9Bài 3.09. Đệ quy vs vòng lặp4 p
- 4.10Bài 3.10. Phạm vi sử dụng của các loại biến10 p
- 4.11Bài 3.11. BÀI KIỂM TRA SỐ 3.310 p
- 4.12Bài 3.12. Nạp chồng hàm10 p
- 4.13Bài 3.13. Truyền tham số bằng con trỏ và tham chiếu hằng10 p
- 4.14Bài 3.14. Hàm inline, contexPr10 p
- 4.15Bài 3.15. Hàm lambda và hàm ẩn danh10 p
- 4.16Bài 3.16. Hàm template và suy luận kiểu tham số10 p
- 4.17Bài 3.17. Kiểu trả về hàm trong C++ hiện đại10 p
- 4.18Bài 3.18. Quy tắc thiết kế hàm và xử lý lỗi10 p
- 4.19Bài 3.19. Tham số đối tượng tường minh10 p
- 4.20Bài 3.20. Các cải tiến về hàm trong C++2610 p
- Chương 4: Mảng trong C++19 ItemsChương này ta sẽ tìm hiểu cách triển khai, lưu trữ, truy xuất các dữ liệu khác nhau sử dụng mảng. Nội dung tập trung vào mảng 1 chiều và 2 chiều.
- 5.1Tổng quan về cấu trúc dữ liệu mảng trong C++
- 5.2Bài 4.01. Mảng 1 chiều33 p
- 5.3Bài 4.02. Sử dụng mảng làm tham số, đối số của hàm38 p
- 5.4Bài 4.03. Sắp xếp trong mảng63 p
- 5.5Bài 4.04. Tìm kiếm trong mảng34 p
- 5.6Bài 4.05. Mảng 2 chiều30 p
- 5.7Bài 4.06. Tìm hiểu lớp template array39 p
- 5.8Bài 4.07. CÂU HỎI KIỂM TRA CHƯƠNG 410 p
- 5.9Bài 4.08. Khởi tạo, sao chép và gán mảng trong C++
- 5.10Bài 4.09. Bộ nhớ, địa chỉ và cơ chế chuyển mảng thành con trỏ
- 5.11Bài 4.10. Con trỏ, tham chiếu và mảng trong khai báo hàm
- 5.12Bài 4.11. Xử lý mảng bằng thư viện thuật toán chuẩn STL
- 5.13Bài 4.12. Các kỹ thuật xử lý mảng nâng cao
- 5.14Bài 4.13. Các bài toán mảng nâng cao
- 5.15Bài 4.14. Các thuật toán và phép biến đổi trên ma trận
- 5.16Bài 4.15. So sánh mảng tích hợp, std::array, std::vector và std::span
- 5.17Bài 4.16. std::span và std::mdspan trong xử lý dữ liệu mảng
- 5.18Bài 4.17. Xử lý mảng hiệu năng cao với SIMD và các tính năng C++ hiện đại
- 5.19Bài 4.18. std::inplace_vector và vùng chứa có dung lượng cố định trong C++26
- Chương 5: Con trỏ19 ItemsChương này sẽ cung cấp các khái niệm và các thao tác liên quan đến con trỏ - đặc trưng của ngôn ngữ lập trình C++.
- 6.1Bài 5.01. Con trỏ và địa chỉ vùng nhớ31 p
- 6.2Bài 5.02. Con trỏ và truyền tham chiếu23 p
- 6.3Bài 5.03. Con trỏ và mảng 1 chiều32 p
- 6.4Bài 5.04. BÀI KIỂM TRA 5.110 p
- 6.5Bài 5.05. Con trỏ với từ khoá const33 p
- 6.6Bài 5.06. Con trỏ hàm56 p
- 6.7Bài 5.07. Con trỏ và cấp phát bộ nhớ động42 p
- 6.8Bài 5.08. Sử dụng toán tử sizeof22 p
- 6.9Bài 5.09. Các loại con trỏ đặc biệt và con trỏ void
- 6.10Bài 5.10. Số học con trỏ và các phép toán trên con trỏ
- 6.11Bài 5.11. Con trỏ nhiều cấp và con trỏ trỏ tới con trỏ
- 6.12Bài 5.12. Vòng đời đối tượng, con trỏ treo và an toàn bộ nhớ
- 6.13Bài 5.13. Con trỏ thông minh
- 6.14Bài 5.14. Con trỏ chia sẻ và tham chiếu yếu
- 6.15Bài 5.15. Con trỏ trỏ tới các thành phần của lớp
- 6.16Bài 5.16. Chuyển đổi con trỏ và tương tác với thư viện C
- 6.17Bài 5.17. Cấp phát, khởi tạo và giải phóng bộ nhớ nâng cao
- 6.18Bài 5.18. Con trỏ, vùng nhớ thô và quy tắc object lifetime
- 6.19Bài 5.19. Quản lý vòng đời đối tượng tường minh với C++23
- Chương 6: Kí tự và chuỗi kí tự11 ItemsChương này sẽ cung cấp cho bạn các hướng dẫn để thực hiện các thao tác với kí tự, chuỗi kí tự trong ngôn ngữ lập trình C++.
- 7.1Bài 6.01. Kí tự và chuỗi kí tự36 p
- 7.2Bài 6.02. Các hàm chuyển đổi giữa số và chuỗi kí tự35 p
- 7.3Bài 6.03. Lớp string và các phương thức thường dùng(p1)53 p
- 7.4Bài 6.04. Lớp string và các phương thức thường dùng(p2)37 p
- 7.5Bài 6.05. Sử dụng lớp stringstream8 p
- 7.6Bài 6.06. Mảng ký tự và xử lý chuỗi C-style trong C++
- 7.7Bài 6.07. Các hàm xử lý và phân loại ký tự trong C++
- 7.8Bài 6.08. Lớp std::string_view và xử lý chuỗi không sao chép
- 7.9Bài 6.09. Biểu thức chính quy với std::regex
- 7.10Bài 6.10. Các thuật toán và kỹ thuật xử lý chuỗi
- 7.11Bài 6.11. Unicode, UTF-8 và mã hóa văn bản trong C++
- Chương 7: Kiểu dữ liệu struct10 ItemsNội dung chương này chúng ta sẽ tìm hiểu kiểu dữ liệu struct và các đặc trưng hay ho của nó.
- 8.1Bài 7.01. Kiểu dữ liệu struct30 p
- 8.2Bài 7.02. Sử dụng typedef12 p
- 8.3Bài 7.03. Kiểu Enum18 p
- 8.4Bài 7.04. Danh sách liên kết đơn72 p
- 8.5Bài 7.05. Danh sách liên kết đôi72 p
- 8.6Bài 7.06. Tạo stack từ danh sách liên kết đơn17 p
- 8.7Bài 7.07. Tạo queue từ danh sách liên kết đơn14 p
- 8.8Bài 7.08. Khởi tạo và sử dụng struct trong C++ hiện đại
- 8.9Bài 7.09. So sánh struct và class
- 8.10Bài 7.10. enum class và kiểu dữ liệu an toàn
- Chương 8: Lớp và đối tượng, tính đóng gói dữ liệu13 ItemsNội dung chương này sẽ là những kiến thức liên quan đến phần hướng đối tượng của C++ bắt đầu với lớp và đối tượng.
- 9.1Bài 8.01. Lớp và đối tượng39 p
- 9.2Bài 8.02. Hàm khởi tạo, hàm hủy42 p
- 9.3Bài 8.03. Keyword private, public và getter/setter26 p
- 9.4Bài 8.04. Mô hình hóa một lớp với UML class diagram25 p
- 9.5Bài 8.05. Phân tách các thành phần của lớp ra nhiều file khác nhau36 p
- 9.6Bài 8.06. Sử dụng keyword this14 p
- 9.7Bài 8.07. Thành phần static của lớp24 p
- 9.8Bài 8.08. Sử dụng keyword const với các đối tượng và các hàm thành phần18 p
- 9.9Bài 8.09. Mối quan hệ hợp thành(composition hay has a)35 p
- 9.10Bài 8.10. Hàm bạn và lớp bạn19 p
- 9.11Bài 8.11. Danh sách khởi tạo thành viên và khởi tạo đối tượng
- 9.12Bài 8.12. Hàm tạo mặc định, hàm tạo sao chép và các hàm thành viên đặc biệt
- 9.13Bài 8.13. Vòng đời đối tượng và quản lý tài nguyên với RAII
- Chương 9: Tính chất kế thừa, trừu tượng15 ItemsNội dung chương này tiếp tục mở rộng thế giới lập trình hướng đối tượng với các đặc trưng tiếp theo của nó.
- 10.1Bài 9.01. Lớp cha, lớp con67 p
- 10.2Bài 9.02. Ghi đè phương thức30 p
- 10.3Bài 9.03. Sử dụng keyword protected25 p
- 10.4Bài 9.04. Hàm tạo, hàm hủy trong lớp con22 p
- 10.5Bài 9.05. Ép kiểu trong mối quan hệ kế thừa
- 10.6Bài 9.06. Lớp trừu tượng và hàm thuần ảo24 p
- 10.7Bài 9.07. Tính chất đa hình25 p
- 10.8Bài 9.08: Chuẩn gợi ý thiết kế kế thừa12 p
- 10.9Bài 9.09. Các kiểu kế thừa và quyền truy cập trong C++
- 10.10Bài 9.10. Hàm ảo, liên kết động và cơ chế đa hình
- 10.11Bài 9.11. Hàm hủy ảo và quản lý vòng đời trong kế thừa
- 10.12Bài 9.12. Kế thừa nhiều lớp và kế thừa ảo
- 10.13Bài 9.13. Ép kiểu và nhận diện kiểu trong hệ thống kế thừa
- 10.14Bài 9.14. Object slicing và sao chép trong hệ thống kế thừa
- 10.15Bài 9.15. Interface, lớp cơ sở trừu tượng và thiết kế đa hình
- Chương 10: Thao tác với file5 ItemsNội dung chương này sẽ hướng dẫn bạn các thao tác với file như tạo file, đọc file, ghi file.
- Chương 11: Nạp chồng toán tử3 ItemsChương này sẽ cung cấp cho bạn kĩ năng nạp chồng toán tử - một đặc trưng của C++.
- Chương 12: Templates và namespace7 ItemsChương này ta sẽ tìm hiểu cách tạo và sử dụng lớp, hàm template và namespace.
- Chương 13: Các container và iterator trong thư viện chuẩn C++8 ItemsChương này sẽ giới thiệu với các bạn các container và iterator trong thư viện C++ cũng như cách hoạt động của chúng.
- 14.1Bài 13.01. Giới thiệu các container16 p
- 14.2Bài 13.02. Giới thiệu các iterator24 p
- 14.3Bài 13.03. Tìm hiểu và sử dụng vector51 p
- 14.4Bài 13.04. Tìm hiểu và sử dụng forward_list51 p
- 14.5Bài 13.05. Tìm hiểu và sử dụng list48 p
- 14.6Bài 13.06. Tìm hiểu và sử dụng deque41 p
- 14.7Bài 13.07. Tìm hiểu và sử dụng set25 p
- 14.8Bài 13.08. Tìm hiểu và sử dụng stack, queue18 p
- Chương 14: Xử lý ngoại lệ3 ItemsChương này ta sẽ tiến hành xử lý các ngoại lệ xảy ra trong quá trình vận hành chương trình C++.
- Chương 15: Dự án tốt nghiệp cuối khóa3 ItemsChương này cung cấp các đề tài để thực hiện dự án tốt nghiệp cuối khóa ngôn ngữ lập trình C++ từ cơ bản đến nâng cao.
- Chương 16: Tài liệu tham khảo Khóa học C++4 ItemsNội dung chương này sẽ cung cấp cho các bạn các bài giải mẫu và tài liệu tham khảo dùng trong và ngoài khóa học
Bài 2.01. Hướng dẫn chung về project trong Visual Studio
Nội dung bài học
- Tạo thêm project mới
- Chọn project để chạy chương trình
- Thêm, loại bỏ file khỏi mục build
- Khóa và mở khóa file trong một project
- Chế độ run vs debug
Lưu ý
- Không đặt tên file, tên project có dấu tiếng Việt. Ví dụ:
- SAI: bài_học_số_1.cpp, anh-yêu-yến.cpp
- ĐÚNG: Lesson1.cpp hoặc baihocso1.cpp hoặc bai_hoc_so_1.cpp
- Không lưu file chương trình vào thư mục tiếng Việt có dấu.
- Muốn chọn project nào để chạy thì ta nhấn chuột phải vào project đó rồi chọn Set as Startup Project.
- Muốn chạy file chứa hàm main nào phải cấm mọi file có hàm main khác lại mới chạy được vì trong 1 project c/C++ của Visual Studio chỉ cho phép 1 file duy nhất chứa hàm main.
- Các file mã nguồn phải đặt trong mục Source Files.
- Các file dữ liệu đầu vào và kết quả đầu ra ta add nó vào mục Resouce Files.
