Trường Đại Học BáchKhoa Tp.HCM
Khoa Khoa học và Kỹ thuật Máy tính
© 2017
Lập trình C/C++
1
Chương 10
Lp trình hướng đối tượng
-- bản--
Lê Thành ch
CuuDuongThanCong.com https://fb.com/tailieudientucntt
Trường Đại Học BáchKhoa Tp.HCM
Khoa Khoa học và Kỹ thuật Máy tính
© 2017
Lập trình C/C++
2
Nội dung
nKiểu dữ liệu trong C -Ôn lại
nCác khái niệm cơ bản
nCon trỏ this
nTổng hợp các thuật ngữ (I)
nTính khả kiến
nThiết kế lớp
nHàm khởi tạo và hàm hu
nĐịnh nghĩa lại toán tử
nThành viên có tính “static
nThành viên có tính “const
nTổng hợp các thuật ngữ (II)
nQuan hệ bạn bè (friendship)
nTổ chức mã nguồn cho lớp
nBiễu diễn lớp bằng sơ đồ
nTổng kết
CuuDuongThanCong.com https://fb.com/tailieudientucntt
Trường Đại Học BáchKhoa Tp.HCM
Khoa Khoa học và Kỹ thuật Máy tính
© 2017
Lập trình C/C++
3
typedef struct{
int day, month, year;
} Date;
int main(int argc, char** argv) {
int a;
double d;
Date c = {20, 5, 2017};
return 0;
}
Kiểu dữ liệu trong C
nt đon chương tnh
Bộ biên dch cp phát 3 vùng nh có
n: a, d, và c trên STACK:
a: 4 bytes àdùng sizeof(.) cho cụ thể.
d: 8 bytes
c: 12 bytes
Cả 3 vùng nhớ này đu THĐỘNG,
CHNG NĂNG CHỨA các g
trcủa kiểu được tả.
CuuDuongThanCong.com https://fb.com/tailieudientucntt
Trường Đại Học BáchKhoa Tp.HCM
Khoa Khoa học và Kỹ thuật Máy tính
© 2017
Lập trình C/C++
4
Kiểu dữ liệu trong C
thđộng, nên khi cn x lý d liu, thc hin:
a) Tạo ra hàm
b) Gọi m truyền dữ liệu vào àdụ như hàm: printtrên
typedef struct{
int day, month, year;
} Date;
void print(Date& d){
cout << d.day << "/" << d.month << "/" << d.year;
}
int main(int argc, char** argv) {
int a;
double d;
Date c = {20, 5, 2017};
print(c);
return 0;
}
CuuDuongThanCong.com https://fb.com/tailieudientucntt
Trường Đại Học BáchKhoa Tp.HCM
Khoa Khoa học và Kỹ thuật Máy tính
© 2017
Lập trình C/C++
5
Kiểu dữ liệu trong C
thđộng, nên khi cn x lý d liu:
a) Tạo ra hàm
b) Gọi m truyền dữ liệu vào à
dụ như hàm: print trên
Nhược đim ca tính THỤ
ĐỘNG này là ?
typedef struct{
int day, month, year;
} Date;
void print(Date& d){
cout << d.day << "/" << d.month << "/" << d.year;
}
int main(int argc, char** argv) {
int a;
double d;
Date c = {20, 5, 2017};
print(c);
return 0;
}
CuuDuongThanCong.com https://fb.com/tailieudientucntt