Xem mẫu

  1. Lập trình hướng đối tượng Hà Văn Sang Bộ môn: Tin học TC – KT Khoa: Hệ Thống Thông Tin Kinh tế - Học Viện Tài Chính Tel: 0982.165.568 Email: sanghv@hvtc.edu.vn 2Website: http://www.hvtc.edu.vn/sanghv 9/8/2011 9:42 µµ 1
  2. CHƯƠNG II 29/8/2011 9:42 µµ 2
  3. 1. Lịch sử của C++ C++ được xây dựng trên nền của C C được phát minh bởi Dennis Ritchie năm 1972 C dùng để viết hệ điều hành UNIX Lịch sử của C và Unix gắn liền với nhau UNIX được hoàn thành với C 3/20 29/8/2011 9:42 µµ
  4. 1. Lịch sử của C++ (tiếp) C++ được đưa ra bởi Bjarne Stroustrup  Phiên bản đầu tiên ra mắt năm 1980, với tên “C with class”  Phiên bản thương mại đầu tiên vào năm 1985  Ansi và ISO đưa ra phiên bản C++ chuẩn  C++ hỗ trợ lập trình hướng đối tượng 4/20 29/8/2011 9:42 µµ
  5. 1. Lịch sử của C++ (tiếp) Ưu điểm:  Được sử dụng rộng rãi  Là sự mở rộng của C  Hỗ trợ lập trình hướng đối tượng Có nhiều thư viện mẫu chuẩn STL 5/20 29/8/2011 9:42 µµ
  6. 2. Mở rộng của C++ Một số mở rộng của C++ so với C: Đơn giản chỉ là 2 dấu ++? Từ khóa mới Dữ liệu, khai báo biến Chuyển kiểu, tham chiếu, cấp phát bộ nhớ … 6/20 29/8/2011 9:42 µµ
  7. 2.1. Lời chú thích Có hai cách chú thích: Cách 1: /* ..*/ Ví dụ: /* chu thich tren nhieu dong*/ Cách 2: // Ví dụ: // Chu thich tren mot dong 7/20 29/8/2011 9:42 µµ
  8. 2.2. Từ khóa mới Một số từ khóa mới: asm catch class delete friend inline new operator private protected public template this throw try virtual •Nếu trong chương trình viêt bằng C có tên trùng  thay đổi lại 8/20 29/8/2011 9:42 µµ
  9. 2.3. Kiểu dữ liệu char và int Dữ liệu kiểu char: sizeof(‘A’)=sizeof(int)=2 sizeof(‘A’)=sizeof(char)=1 Trong C hằng kí tự có kiểu int 2 byte Trong C++ hằng kí tự có kiểu char 1 byte 9/20 29/8/2011 9:42 µµ
  10. 2.4. Khai báo biến C++ cho phép khai báo biến: • Tại bất cứ đâu • Trước khi sử dụng Có hiệu lực trong phạm vi chương trình kể từ vị trí nó xuất hiện Ví dụ: tìm số lớn nhất trong dãy 10/20 29/8/2011 9:42 µµ
  11. 2.5. Chuyển đổi và ép kiểu C++ cho phép chuyển kiểu rộng rãi: 1. Khi gán giá trị số vào biến kiểu khác 2. Các kiểu số khác nhau trong cùng 1 biểu thức Ép kiểu kiểu cũ: myInt = (int) myFloat Ép kiểu kiểu mới: myInt = int (myFloat) Ví dụ: S=1+1/2+..+1/n 11/20 29/8/2011 9:42 µµ
  12. 2.6. Vào ra trong C++ Dòng xuất, nhập dữ liệu: Cú pháp: coutbiếnn; Chú ý: Phải khai báo #include Dùng cin.ignore(1) để bỏ kí tự ‘\n’ Ví dụ: nhập 2 số sau đó in ra tổng và tích 12/20 29/8/2011 9:42 µµ
  13. 2.7. Cấp phát và giải phóng bộ nhớ Vẫn có thể dùng hàm malloc(), calloc(), free() C++ sử dụng thêm hai toán tử: new: để cấp phát bộ nhớ Cú pháp: new tên_kiểu delete: để giải phóng bộ nhớ Cú pháp: delete con_trỏ 13/20 29/8/2011 9:42 µµ
  14. 2.8. Biến tham chiếu Khái niệm: Giống như một bí danh của biến khác Cho phép hàm thao tác trực tiếp trên biến được truyền Cú pháp: Kiểu &Biếnthamchiếu = Biến; Ví dụ: int a, &x=a; x=1; // a=1 cout
  15. 2.9. Hằng tham chiếu Cú pháp: const Kiểu &hằngthamchiếu = Biến(hằng); Ví dụ: int n=10; const int &m = n; 15/20 29/8/2011 9:42 µµ
  16. 2.10. Hàm đa năng Là các hàm có cùng tên nhưng đối số khác nhau Khi gặp hàm này, trình biên dịch gọi hàm dựa vào: Số lượng đối số Kiểu của đối số Ví dụ: tìm max của dãy số nguyên, số thực 16/20 29/8/2011 9:42 µµ
  17. Bài tập (week 2) • Sử dụng TC++ để lập trình: 1. Làm lại các bài tập ở tuần 1 với cout và cin x x2 xn 2. Viết chương trình tính: S 1   ...  n 1 23 3. Nhập ma trận thực cấp mxn: - Tìm phần tử lớn nhất - Sắp xếp tăng dần - In ma trận sau khi đã sắp xếp 17/20 29/8/2011 9:42 µµ
  18. Bài tập (week 2-tiếp) • Sử dụng TC++ để lập trình: 4. Xây dựng chương trình thao tác với phân số: nhập, in, tối giản, cộng, tích hai phân số 5. Xây dựng chương trình thao tác với vec tơ: - Nhập 2 vec tơ - In - Tính tổng, tích hai vectơ 18/20 29/8/2011 9:42 µµ
  19. Qui cách nộp bài Gửi tới địa chỉ: sanghv@gmail.com CC: sanghv@hvtc.edu.vn Tiêu đề: [Lớp][BT2][Stt][Họ và tên] Ví dụ: [K43/41.01][BT2][14][Lê hoàng Vũ] Hạn nộp: 23h59’ ngày 22/01/2008 19/20 29/8/2011 9:42 µµ
nguon tai.lieu . vn