Go Back   VN-Zoom Forum > Chia sẻ kiến thức > Lập trình > Pascal | C/C++

 

Hãy viết bài bằng Tiếng Việt có dấu


Trả lời Gửi Ðề Tài Mới
 
Ðiều Chỉnh Xếp Bài
Old 22-08-2008, 02:36   #1
Búa Gỗ
 
chautientien1984's Avatar
 
Tham gia: Aug 2008
Bài: 15
VZD: 570
Điểm: 3/1 bài viết
Default cach sung class bang constructor va destructor

bua nay la ngay thu 4 minh hoc ve c++ va minh hoc den cach thuc su dung class.

tuy sach co giai thich ve constructor va destructor nhung minh cung vang con 1 it thac mat.

Ban nao co the giai thich ro hon cho minh tai sao minh phai su dung constructor va destructor trong khi ko can su dung no program vang chay binh thuong. Mot dich su dung no de lam gi?

Cam on nhieu nhe


//deconstruct and construct

#include <iostream>

using namespace std;

class Cat
{
public:
Cat (int initialAge); //construct declare
~Cat(); //destruct
int GetAge();
void SetAge(int age);
void Meow();
private:
int itsAge; //member variable
}; //end of class decleration

//being of class method

Cat::Cat(int initialAge)
{
itsAge = initialAge ;
}
Cat::~Cat() //deconstruct clean up the left over memory of initialAge
{} //nothing goes there end of destructor

int Cat::GetAge() //start to get value
{
return itsAge;
}

void Cat::SetAge(int age)
{
itsAge = age ;
}

void Cat::Meow()
{
cout << " Meow.\n";
}

int main()
{
Cat Frisky(5); //initialize value
Frisky.Meow(); //Cat says meow
cout << " Frisky is a cat who is " ;
cout << Frisky.GetAge() << " years old.";
Frisky.Meow();
Frisky.SetAge(7);
cout << " After 2 years, Frisky is " ;
cout << Frisky.GetAge() << " years old.\n";
return 0;
}

output: Meow.
Frisky is a cat who is 5 years old.
Meow.
After 2 years, Frisky is 7 years old.
chautientien1984 vẫn chưa có mặt trong diễn đàn   Trả Lời Với Trích Dẫn
Old 23-08-2008, 19:19   #2
dst
Rìu Sắt Đôi
 
dst's Avatar
 
Tham gia: Mar 2008
Đến từ: Hà Nội
Bài: 270
VZD: 6.399
Điểm: 324/79 bài viết
Default

Bạn ơi, vậy là bạn chưa hiểu rõ về C++ rồi:
+ Bộ tạo, bộ hủy, bộ tạo copy, toán tử gán là những hàm mà nếu bạn không khai báo chúng vẫn sẽ được tạo mặc định bởi trình biên dịch. Do:
+ Chúng đảm bảo sự sống cho 1 class. Bộ tạo có trách nhiệm khởi tạo những thành viên dữ liệu không static(bộ tạo mặc định) và thực hiện bất cứ hoạt động nào khi một biến lớp được sử dụng(bộ tạo do bạn định nghĩa).
dst vẫn chưa có mặt trong diễn đàn   Trả Lời Với Trích Dẫn
Trả lời Gửi Ðề Tài Mới

Ðiều Chỉnh
Xếp Bài

Quyền Sử Dụng Ở Diễn Ðàn
Bạn không thể gửi chủ đề mới
Bạn không thể gửi trả lời
Bạn không thể gửi file đính kèm
Bạn không thể tự sửa bài viết của bạn

BB code is Mở
Smilies đang Mở
[IMG] đang Mở
HTML đang Tắt
Trackbacks are Tắt
Pingbacks are Tắt
Refbacks are Tắt
Chuyển đến


Múi giờ GMT +7. Hiện tại là 09:53.


Powered by vBulletin® Version 3.7.3
Copyright ©2000 - 2008, Jelsoft Enterprises Ltd.
vBCredits v1.4 Copyright ©2007 - 2008, PixelFX Studios
Từ điển được cung cấp bởi VDict.com - Hosting được tài trợ bởi Rao vặt 123