Từ 1 tới 2 trên tổng số 2 kết quả

Đề tài: Phân loại phương thức trong lập trình C++ với class?

  1. #1
    Ngày gia nhập
    01 2009
    Nơi ở
    HCM
    Bài viết
    10

    Mặc định Phân loại phương thức trong lập trình C++ với class?

    Các tiền bối có thể giúp em về vấn đề này được không .
    em đang cần các ví dụ về các phương thức như :PT khởi tạo, PT cung cấp thông tin, PT cập nhất thông tin, PT xử lý tính toán, PTkiểm tra để phục vụ cho semina sắp tới hỵ vọng các tiến bối giúp đỡ

  2. #2
    Ngày gia nhập
    10 2008
    Bài viết
    178

    đang rảnh tí giúp bạn về phương thức khởi tạo
    giả sử mình có một class NhanVien như sau
    PHP Code:
    class NhanVien
    {
        private:
            
    string Ten;
            
    string NamSinh;
            
    float LuongCoBan;
        public:
            
    NhanVien(stringstringfloat);
            
    NhanVien();
                    
    NhanVien(NhanVien &);

    bạn sẽ thấy trong class có 2 phương thức là
    PHP Code:
    NhanVien(stringstringfloat);
    NhanVien(); 
    hai phương thức đó được gọi là constructor tức là hàm khởi tạo
    cái đầu tiên gọi là hàm tạo có đối
    PHP Code:
    NhanVien(stringstringfloat); 
    cái thứ hai gọi là hàm tạo không đối
    PHP Code:
    NhanVien(); 
    hai phương thức này dùng dể khởi tạo đối tượng
    cái đầu tiên là khởi tạo đối tượng có tham số truyền vào
    vd:khai báo
    PHP Code:
    NhanVien A("CongDongC""10/3/2009"1000); 
    thì nhân viên A sẽ có Tên CongDongC NamSinh 10/3/2009 LuongCoBan 1000
    cái thứ hai khởi tạo đối tượng với giá trị mạc định ban đầu
    vd:khai báo
    PHP Code:
    NhanVien B("chua biet ten""khong biet"khong biet); 
    thì nhân viên B sẽ có Tên chua biet ten NamSinh khong biet LuongCoBan khong biet
    cách viêt như sau

    PHP Code:
     //viết ngoài class
    NhanVien::NhanVien(string astring bfloat c)
    {
        
    Ten a;
        
    NamSinh b;
        
    LuongCoBan c;
    }
    NhanVien::NhanVien()
    {
        
    LuongCoBan 0;
        
    Ten "";
        
    NamSinh "";

    PHP Code:
    // viết trong class
    {
        protected:
            
    string Ten;
            
    string NamSinh;
            
    float LuongCoBan;
        public:
            
    NhanVien(string astring bfloat c)
            {
                
    Ten a;
                
    NamSinh b;
                
    LuongCoBan c;
            }
            
    NhanVien()
            {
                
    Ten "";
                
    NamSinh "";
                
    LuongCoBan 0.0;
            }
                    

    đối với phương thức thứ nhất có thể viết như sau
    PHP Code:
    NhanVien::NhanVien(string astring bfloat c):Ten(a), NamSinh(b), LuongCoBan(c)
    {
        
    }
    //khuyến khích viết cách này 
    chú ý trong c++ hàm tạo không đối là mạc định có sãn
    nhưng nếu khi ta viết viết một hàm tạo có đối thì hàm tạo không đối này sẽ bị che mất vậy để cho đảm bảo ta nên viết trước hàm tạo không đối
    vấn đề về hàm tạo còn có copy constructor phương thức thứ ba
    phương thức này dùng để khởi tạo và sao chép đối tượng
    vd: copy constructor
    PHP Code:
    NhanVien(NhanVien &A); 
    viết như sau
    trong class
    PHP Code:
    NhanVien(NhanVien &A)
    {
           
    Ten A.Ten;
        
    NamSinh A.NamSinh;
        
    LuongCoBan A.LuongCoBan;

    Ngoài class
    PHP Code:
    NhanVien::NhanVien(NhanVien &A)
    {
           
    Ten A.Ten;
        
    NamSinh A.NamSinh;
        
    LuongCoBan A.LuongCoBan;

    copy contructor được viết khi trong class có thuộc tính là con trỏ
    PHP Code:
    NhanVien(NhanVien &A
    tại sao lại có dấu &
    vì bản chất của phương thức này là copy đối tượng nếu ta không truyền & thì
    nó sẽ copy ra một bản sao cua A mà phương thức ta viết để copy.chưa có copy mà copy -> lỗi
    //mấy bác ngoài có xem thấy sai chõ nào chỉ giúp em

Các đề tài tương tự

  1. Algorithm Chèn Class Trong Class C#?
    Gửi bởi satthuit trong diễn đàn Thắc mắc lập trình C#
    Trả lời: 4
    Bài viết cuối: 08-01-2012, 12:09 PM
  2. class bên trong 1 class và cấp phát bộ nhớ
    Gửi bởi hope2907 trong diễn đàn Nhập môn lập trình C#, ASP.NET
    Trả lời: 0
    Bài viết cuối: 03-10-2011, 04:46 PM
  3. Phân biệt CLASS - OBJECT - INSTANCE, trong đoạn code này, cái nào là intstance, object, class ?
    Gửi bởi megaboyvn trong diễn đàn Thắc mắc lập trình ASP.NET
    Trả lời: 8
    Bài viết cuối: 04-08-2011, 03:45 PM
  4. Cách lấy giá trị biến từ class này sang class khác trong lập trình C#
    Gửi bởi phongk20 trong diễn đàn Thắc mắc lập trình C#
    Trả lời: 4
    Bài viết cuối: 13-03-2011, 05:19 PM
  5. Viết Plugin Đọc các loại File trong C# Dùng Inhetrite Interface, Abstract, hay Class
    Gửi bởi buidinhba5 trong diễn đàn Thắc mắc lập trình C#
    Trả lời: 3
    Bài viết cuối: 11-07-2009, 04:27 PM

Quyền hạn của bạn

  • Bạn không thể gửi đề tài mới
  • Bạn không thể gửi bài trả lời
  • Bạn không thể gửi các đính kèm
  • Bạn không thể chỉnh sửa bài viết của bạn