Lập Trình C++ - Xây Dựng Template Trong C++ - Phan Xuân Chánh
Có thể bạn quan tâm
Press ESC to close
Or check our Popular Categories...
Lập trình Tiếng Nhật Công nghệ thông tin Kỹ năng ứng dụng CNTT Tiếng Việt Chưa được phân loạiTemplate trong C++ là nền tảng của lập trình tổng quát (generic programming), tức là viết code theo các mà độc lập với bất kỳ kiểu cụ thể nào.
Template là từ khóa trong C++, chúng ta có thể hiểu rằng là nó một kiểu dữ liệu trừu tượng, đặc trưng cho các kiểu dữ liệu cơ bản. Template là từ khóa báo cho trình biên dịch rằng đoạn mã sau đây định nghĩa cho nhiều kiểu dữ liệu và mã nguồn của nó sẽ được biên dịch sinh ra tương ứng cho từng kiểu dữ liệu trong quá trình biên dịch. Có hai kiểu Template trong C++:
- Function Template: là một khuôn mẫu hàm, cho phép định nghĩa các hàm tổng quát thao tác cho nhiều kiểu dữ liệu.
- Class template: là một khuôn mẫu lớp, cho phép định nghĩa các lớp tổng quát cho nhiều kiểu dữ liệu.
Đối với Function Template
#include<iostream> using namespace std; template <typename T> void Swap(T *a, T *b) { *a = *a + *b; *b = *a - *b; *a = *a - *b; } int main() { int a = 5; int b = 10; Swap<int>(&a, &b); cout << "a = " << a <<" b = " << b << endl; // a = 10, b = 5; double x = 3.5; double y = 5.6; Swap<double>(&x, &y); cout << "x = " << x << " y = " << y << endl; // x = 5.6, y = 3.5; return 0; }Đối với Class Template
#include<iostream> using namespace std; template <class T> class Sort { public: static void interchangeSort(T *a, int n) { for (int i = 0; i < n - 1; i++) { for (int j = i + 1; j < n; j++) { if (*(a + i) < *(a + j)) Swap((a + i), (a + j)); } } } static void Swap(T* a, T* b) { *a = *a + *b; *b = *a - *b; *a = *a - *b; } }; int main() { int a[5] = { 10, 50, 30, 40, 20 }; int n = sizeof(a) / sizeof(a[0]); Sort<int>::interchangeSort(a, n); cout << " Sorted array : "; for (int i = 0; i < n; i++) cout << a[i] << " "; cout << endl; return 0; }Categorized in:
Công nghệ thông tinLập trìnhTagged in:
C++Share Article:
Phan Xuân Chánh 潘春正
Xin chào các bạn, mình là Phan Xuân Chánh (chữ Hán: 潘春正, tên trong tiếng Nhật: ファン・スアン・チャン). Hiện tại, công việc chính của mình là một lập trình viên.
View All ArticlesBình luậnHủy
Related Articles
[1000 bài tập lập trình C/C++] Bài 4: Tính S(n) = 1/2 + 1/4 + … + 1/2n
23 Tháng 7, 2025[1000 bài tập lập trình C/C++] Bài 3: Tính S(n) = 1 + 1/2 + 1/3 + … + 1/n
31 Tháng 10, 2024[1000 bài tập lập trình C/C++] Bài 2: Tính S(n) = 1^2 + 2^2 + … + n^2
20 Tháng 10, 2024[1000 bài tập lập trình C/C++] Bài 1: Tính S(n) = 1 + 2 + 3 + … + n
19 Tháng 10, 2024Other Stories
Mã hóa MD5 trong JavaScript
Next StoryTạo Slug trong C#
Previous StoryCác bài viết trên blog này, ngoại trừ tiếng Việt thì đều là bản dịch từ AI. Do đó, bản dịch sang những ngôn ngữ khác sẽ có những sai sót về mặt từ vựng, ngữ pháp ở một mức độ nào đó.
Đa ngôn ngữ
-
Tiếng Việt
Bài viết mới nhất
Cài Webmin trên Ubuntu Server với vài bước đơn giản
27 Tháng 7, 2025Hướng dẫn chuyển Git repo sang một dịch vụ lưu trữ khác
25 Tháng 7, 2025[1000 bài tập lập trình C/C++] Bài 4: Tính S(n) = 1/2 + 1/4 + … + 1/2n
23 Tháng 7, 2025Danh sách các CPU dùng socket LGA 1150 (FCLGA1150)
22 Tháng mười một, 2024Lưu trữ
Lưu trữ Chọn tháng Tháng 7 2025 (3) Tháng mười một 2024 (2) Tháng 10 2024 (12) Tháng 9 2024 (3) Tháng 8 2024 (1) Tháng 7 2024 (9) Tháng 6 2024 (12) Tháng 5 2024 (15) Tháng 4 2024 (6) Tháng 3 2024 (11) Tháng 1 2024 (2) Tháng 12 2023 (1) Tháng mười một 2023 (1) Tháng 10 2023 (4) Tháng 9 2023 (5) Tháng 8 2023 (2) Tháng 7 2023 (6) Tháng 6 2023 (4) Tháng 4 2023 (1) Tháng 3 2023 (3) Tháng 2 2023 (1) Tháng 12 2022 (3) Tháng 10 2022 (1) Tháng 9 2022 (3) Tháng 8 2022 (3) Tháng 7 2022 (6) Tháng 6 2022 (4) Tháng 5 2022 (4) Tháng 4 2022 (2) Tháng 3 2022 (5) Tháng 2 2022 (2) Tháng 1 2022 (4) Tháng 12 2021 (3) Tháng mười một 2021 (2) Tháng 10 2021 (1) Tháng 9 2021 (4) Tháng 8 2021 (1) Tháng 6 2021 (2) Tháng 5 2021 (1) Tháng 4 2021 (2) Tháng 3 2021 (2) Tháng 2 2021 (1) Tháng 1 2021 (4) Tháng 12 2020 (3) Tháng mười một 2020 (3) Tháng 10 2020 (1) Tháng 9 2020 (4) Tháng 8 2020 (1)Thể loại
Lập trình (68) Tiếng Nhật (24) Công nghệ thông tin (23) Kỹ năng ứng dụng CNTT (10) Tiếng Việt (7) Chưa được phân loại (5) Tiếng Anh (5) Kanji (4) Hán văn (Văn ngôn) (3) Ubuntu (3)Thẻ tag
C# (18) Từ vựng tiếng Nhật (12) Lập trình căn bản (10) C++ (9) WordPress (7) JavaScript (6) Nội dung cũ từ trang phanxuanchanh.home.blog (6) PHP (6) Hán-Việt (5) C/C++ (5) Kanji (4) 1000 bài tập lập trình C/C++ (4) GitHub (4) Chia sẻ mã nguồn (4) Hàm băm (4) Tên các quốc gia trong tiếng Nhật (3) ASP.NET (3) UUID (3) GUID (3) furigana (3)Từ khóa » Hàm Template Trong C
-
Template Trong C++ — Modern C++
-
Cách Sử Dụng Template Trong C++ - Lập Trình Không Khó
-
Sử Dụng Template Trong C++ Thế Nào (Phần 1) - CodeLearn
-
Template Trong C++ - Học Lập Trình C++ Online - VietTuts
-
Chi Tiết Bài Học Templates Trong C++ - Vimentor
-
[Tự Học C++] Ví Dụ Về Hàm Template Trong C++
-
[Tự Học C++] Template Classes Trong C++ »
-
Khuôn Mẫu Hàm Trong C++ (Function Templates) | How Kteam
-
Template C++ Là Gì - Sử Dụng Template Trong C++ Thế Nào (Phần 1)
-
Template Trong C++ - Hoclaptrinh
-
Template Trong C++ | 101 Bài Hướng Dẫn C++ Hay Nhất
-
Template - Viblo
-
Template Trong C++ - Techacademy
-
C++ Templates: Tìm Hiểu Về Template