Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (504.11 KB, 24 trang )
<span class='text_page_counter'>(1)</span><div class='page_container' data-page=1>
Thuộc tính và phương thức thơng thường.Thuộc tính và phương thức thơng thường.
Mỗi đối tượng có bản sao riêng.Mỗi đối tượng có bản sao riêng.
Thuộc tính và phương thức tĩnh.Thuộc tính và phương thức tĩnh.
Các đối tượng dùng chung.Các đối tượng dùng chung.
p1: PhanSo
Tử số
Mẫu số
p1: PhanSo
Tử số
Mẫu số <sub>2</sub><sub>2</sub>
1
1
PhanSo
Tử số
Mẫu số
<b>Giá trị lớn nhất</b>
PhanSo
Tử số
Mẫu số
<b>Giá trị lớn nhất</b> p2: PhanSo
Tử số
p2: PhanSo
Tử số 22
<b>Thành phần dùng chung cho </b>
<b>MỌI đối tượng của lớp!!</b>
class PhanSo
class PhanSo
{
{
private:
private:
<b>static int m_giaTriLN;</b>
<b>static int m_giaTriLN;</b>
public:
public:
<b>static int layGiaTriLN();</b>
<b>static int layGiaTriLN();</b>
private:
private:
int
int m_tuSo;m_tuSo;
int
int m_mauSo;m_mauSo;
<b>PhanSo::m_giaTriLN = 10000;</b>
<b>PhanSo::m_giaTriLN = 10000;</b>
void main()
void main()
{
{
PhanSo p1(1, 2);
PhanSo p1(1, 2);
PhanSo p2(2, 3);
PhanSo p2(2, 3);
<b>int x1 = PhanSo::layGiaTriLN();</b>
<b>int x1 = PhanSo::layGiaTriLN();</b>
class Array
class Array
{
{
private:
private:
int
int m_size;m_size;
int
int *m_data;*m_data;
public:
public:
Array(int size);
Array(int size);
};
m_size = size;
m_size = size;
m_data = new int[m_size];
m_data = new int[m_size];
void main()
void main()
{
{
Array a1(5);
Array a1(5);
…
…
}
<b>m_data</b>
<b>m_size</b>
<b>m_data</b>
1 22 33 44 55
101
101
class Array
class Array
{
{
private:
private:
int
int m_size;m_size;
int
int *m_data;*m_data;
public:
public:
Array(int size);
Array(int size);
<b>~Array();</b>
<b>~Array();</b>
};
Array a1(5);
Array a1(5);
…
…
}
class Array
class Array
{
{
private:
private:
int
int m_size;m_size;
int
int *m_data;*m_data;
public:
public:
Array(int size);
Array(int size);
~Array();
~Array();
};
};
void main()
void main()
{
{
Array a1(5);
Array a1(5);
Array a2(a1);
Array a2(a1);
…
…
}
<b>m_data</b>
<b>m_size</b>
<b>m_data</b>
1 22 33 44 55
101
101
5
5
<b>m_data</b>
<b>m_size</b>
<b>m_data</b>
101
101
5
5
class Array
class Array
{
{
private:
private:
int
int m_size;m_size;
int *m_data;*m_data;
public:
public:
Array(int size);
Array(int size);
<b>Array(const Array &a);</b>
<b>Array(const Array &a);</b>
~Array();
~Array();
};
};
void main()
void main()
{
{
Array a1(5);
Array a1(5);
Array a2(a1);
Array a2(a1);
…
…
<b>Array::Array(const Array &a)</b>
<b>Array::Array(const Array &a)</b>
<b>{</b>
<b>{</b>
<b>m_size = a.m_size;</b>
<b>m_size = a.m_size;</b>
<b>m_data = new int[m_size];</b>
<b>m_data = new int[m_size];</b>
<b>for (int i = 0; i < m_size; i++)</b>
<b>for (int i = 0; i < m_size; i++)</b>
<b>m_data[ i ] = a.m_data[ i ];</b>
<b>m_data[ i ] = a.m_data[ i ];</b>
class Array
class Array
{
int m_size;m_size;
int
int *m_data;*m_data;
public:
public:
Array(int size);
Array(int size);
Array(const Array &a);
Array(const Array &a);
~Array();
~Array();
};
};
void main()
void main()
{
{
Array a1(5);
Array a1(5);
Array a2(6);
Array a2(6);
…
…
a2 = a1;
a2 = a1;
…
…
}
1 22 33 44 55
101
101
5
5
1 22 33 44 55 66
101
101
5
5
class Array
class Array
{
{
private:
private:
int
int m_size;m_size;
int *m_data;*m_data;
public:
public:
Array(int size);
Array(int size);
Array(const Array &a);
Array(const Array &a);
~Array();
~Array();
<b>Array & operator =(const Array &a);</b>
<b>Array & operator =(const Array &a);</b>
};
};
void main()
void main()
{
{
Array a1(5);
Array a1(5);
…
<b>Array & Array::operator =(const Array &a)</b>
<b>Array & Array::operator =(const Array &a)</b>
<b>{</b>
<b>{</b>
<b>delete m_data;</b>
<b>delete m_data;</b>
<b>m_size = a.m_size;</b>
<b>m_size = a.m_size;</b>
<b>m_data = new int[m_size];</b>
<b>m_data = new int[m_size];</b>
<b>for (int i = 0; i < m_size; i++)</b>
<b>for (int i = 0; i < m_size; i++)</b>
<b>m_data[ i ] = a.m_data[ i ];</b>
<b>m_data[ i ] = a.m_data[ i ];</b>
<b>return *this;</b>
<b>return *this;</b>
<b>}</b>
Hàm hủy: thu hồi bộ nhớ.Hàm hủy: thu hồi bộ nhớ.
Hàm dựng sao chép: sao chép bộ nhớ.Hàm dựng sao chép: sao chép bộ nhớ.
Toán tử gán: sao chép bộ nhớ.Toán tử gán: sao chép bộ nhớ.
class HocSinh
class HocSinh
{
{
private:
private:
char
char *m_hoTen;*m_hoTen;
public:
public:
<b>HocSinh(const HocSinh &h);</b>
<b>HocSinh(const HocSinh &h);</b>
<b>~HocSinh();</b>
Phải có hàm hủy.Phải có hàm hủy.
Dùng thành phần tĩnh để xây dựng bộ đếm đối tượng cho lớp
Dùng thành phần tĩnh để xây dựng bộ đếm đối tượng cho lớp <b>TimeTime</b>..
<i>(Gợi ý)</i>
<i>(Gợi ý)</i>
Khai báo thuộc tính tĩnh lưu số đối tượng được tạo ra.Khai báo thuộc tính tĩnh lưu số đối tượng được tạo ra.
Tăng giá trị thuộc tính này khi khởi tạo đối tượng.Tăng giá trị thuộc tính này khi khởi tạo đối tượng.
Giảm giá trị thuộc tính này khi hủy đối tượng.Giảm giá trị thuộc tính này khi hủy đối tượng.
Bổ sung vào lớp <b>DateDate</b> phương thức tĩnh cho phép tạo đối tượng từ phương thức tĩnh cho phép tạo đối tượng từ
chuỗi “dd/MM/yyyy” cho trước.
chuỗi “dd/MM/yyyy” cho trước.
<i>(Gợi ý)</i>
<i>(Gợi ý)</i>
Xây dựng lớp <b>đa thứcđa thức</b> có những phương thức sau: có những phương thức sau:
<i>(Nhóm tạo hủy)</i>
<i>(Nhóm tạo hủy)</i>
Khởi tạo mặc định đa thức = 0.Khởi tạo mặc định đa thức = 0.
Khởi tạo với bậc và mảng hệ số cho trước.Khởi tạo với bậc và mảng hệ số cho trước.
Khởi tạo từ một đối tượng đa thức khác.Khởi tạo từ một đối tượng đa thức khác.
Hủy đa thức, thu hồi bộ nhớ.Hủy đa thức, thu hồi bộ nhớ.
<i>(Nhóm truy xuất thơng tin)</i>
<i>(Nhóm truy xuất thơng tin)</i>
Lấy bậc đa thức.Lấy bậc đa thức.
Xây dựng lớp <b>đa thứcđa thức</b> (tiếp theo): (tiếp theo):
<i>(Nhóm xử lý nghiệp vụ)</i>
<i>(Nhóm xử lý nghiệp vụ)</i>
So sánh với đa thức khác.So sánh với đa thức khác.
Rút gọn đa thức.Rút gọn đa thức.
Tính giá trị, đạo hàm, nguyên hàm.Tính giá trị, đạo hàm, ngun hàm.
<i>(Nhóm tốn tử)</i>
<i>(Nhóm tốn tử)</i>
Tốn tử số học: +, -, *, /, =.Toán tử số học: +, -, *, /, =.
Xây dựng lớp <b>chuỗichuỗi</b> có những phương thức sau: có những phương thức sau:
<i>(Nhóm tạo hủy)</i>
<i>(Nhóm tạo hủy)</i>
Khởi tạo mặc định chuỗi rỗng.Khởi tạo mặc định chuỗi rỗng.
Khởi tạo với từ chuỗi ký tự cho trước .Khởi tạo với từ chuỗi ký tự cho trước .
Khởi tạo từ một đối tượng chuỗi khác.Khởi tạo từ một đối tượng chuỗi khác.
Hủy chuỗi, thu hồi bộ nhớ.Hủy chuỗi, thu hồi bộ nhớ.
<i>(Nhóm truy xuất thơng tin)</i>
<i>(Nhóm truy xuất thơng tin)</i>
Xây dựng lớp <b>chuỗichuỗi</b> (tiếp theo): (tiếp theo):
<i>(Nhóm xử lý nghiệp vụ)</i>
<i>(Nhóm xử lý nghiệp vụ)</i>
So sánh với chuỗi khác.So sánh với chuỗi khác.
Đổi chữ hoa, thường.Đổi chữ hoa, thường.
Tìm chuỗi con.Tìm chuỗi con.
Trích chuỗi con.Trích chuỗi con.
<i>(Nhóm tốn tử)</i>
<i>(Nhóm tốn tử)</i>
Tốn tử số học: +, =, +=.Toán tử số học: +, =, +=.
Toán tử so sánh: >, <, ==, >=, <=, !=Toán tử so sánh: >, <, ==, >=, <=, !=
Toán tử mảng: [ ].Toán tử mảng: [ ].