intTypePromotion=1
zunia.vn Tuyển sinh 2024 dành cho Gen-Z zunia.vn zunia.vn
ADSENSE

LẬP TRÌNH C nâng cao - BÀI 4 - TEMPLATE

Chia sẻ: Yukogaru | Ngày: | Loại File: PDF | Số trang:4

122
lượt xem
22
download
 
  Download Vui lòng tải xuống để xem tài liệu đầy đủ

BÀI 4: TEMPLATE Hàm template Giả sử chúng ta cần viết một hàm trả về số nguyên lớn nhất giữa 2 số, C++ cung cấp một giải pháp cho vấn đề này, đó là template....

Chủ đề:
Lưu

Nội dung Text: LẬP TRÌNH C nâng cao - BÀI 4 - TEMPLATE

  1. LẬP TRÌNH C/C++ NÂNG CAO Yêu cầu trước khi đọc: học xong Lập trình C/C++ căn bản BÀI 4: TEMPLATE Hàm template Giả sử chúng ta cần viết một hàm trả về số nguyên lớn nhất giữa 2 số CODE int maximum(int a,int b) { return (a>b)?a:b; } Rồi đến số thực chúng ta cũng làm như vậy CODE double maximum(double a,double b) { return (a>b)?a:b; } Rồi giả sử như với lớp Person chúng ta cũng phải làm như vậy (toán tử > đã được overload) CODE Person maximum(Person a,Person b) { return (a>b)?a:b; } C++ cung cấp một giải pháp cho vấn đề này, đó là template CODE templateT maximum(T a,T b) { return (a>b)?a:b; } int main() {
  2. int a=7;int b=5; cout
  3. pair myobject(155,36); myobject.getmaximum(); Thật tuyệt, đúng không ? Vấn đề không đơn giản như vậy. Đau đầu Xem lại hàm template dưới đây CODE templateT maximum(T a,T b) { return (a>b)?a:b; } Ví dụ dưới đây thực ra là đang so sánh địa chỉ bộ nhớ (memory address) của 2 biến a và b CODE char* a = "hello";char* b = "world"; cout
  4. r = new int; //tương đương với p = new int *r = 5; //tương đưong với *p = 5 cout
ADSENSE

CÓ THỂ BẠN MUỐN DOWNLOAD

 

Đồng bộ tài khoản
2=>2