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

Đề tài: Vấn đề về "Đối tượng là hàm thành viên" trong C++

  1. #1
    Ngày gia nhập
    02 2008
    Bài viết
    5

    Mặc định Vấn đề về "Đối tượng là hàm thành viên" trong C++

    Mình cũng đang học về C++, có thắc mắc 1 số vấn đề cần nhờ anh em giải quyết giúp. Hiểu biết còn nông cạn nên tiêu đề có gì sai xin sửa lại giùm mình

    Đối tượng là hàm thành viên (không biết gọi vậy có đúng ko)
    VD như mình có 1 lớp date như sau :
    Code:
    #include <iostream>
    #include <conio.h>
    using namespace std;
    
    class Date{
          private:
                  int ngay;
                  int thang;
                  int nam;
          public:
                 Date();
                 Date(int, int, int);
                 Date(const Date&);
                 void xuat();
                 int hopLe();
    };
    
    Date::Date(){
                 ngay = 1;
                 thang = 1;
                 nam = 1900;
    }
    
    Date::Date(int ng, int th, int na){
                   ngay = ng;
                   thang = th;
                   nam = na;
    }
    
    Date::Date(const Date& d){
                     ngay = d.ngay;
                     thang = d.thang;
                     nam = d.nam;
    }
    
    void Date::xuat(){
                 cout << ngay << "/" << thang << "/" << nam;
    }
    
    int Date::hopLe(){
        switch(thang){
                      case 1:
                      case 3:
                      case 5:
                      case 7:
                      case 8:
                      case 10:
                      case 12:
                           if(ngay <= 31 && ngay > 0) return 1;
                           else return 0;
                           break;
                      case 4:
                      case 6:
                      case 9:
                      case 11:
                           if(ngay <= 30 && ngay > 0) return 1;
                           else return 0;
                           break;
                      case 2:
                           if(nam % 4 == 0)
                           {
                                  if(ngay <= 28 && ngay > 0) return 1;
                                  else return 0;
                           }
                           else
                           {
                                if(ngay <= 29 && ngay > 0) return 1;
                                else return 0;
                           }
                           break;
                      default: return 0;
                      }
    }
    Và 1 lớp Nguoi bao gồm những thông tin cơ bản về 1 người như : họ tên, cmnd, quê quán và ngày sinh...
    Khi đó mình tạo các giá trị private cho lớp Nguoi : char * hoten, int cmnd...và date ngaysinh (biến ngaysinh có kiểu là date)

    Vậy khi khai báo các hàm xây dựng, các hàm thành viên khác của lớp Nguoi thì ở phần ngày sinh phải khai báo như thế nào cho đúng?

    Các bạn có thể cho mình vài vd để dễ hiểu hơn dc ko?

    rất cám ơn ý kiến của các bạn!

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

    bạn cứ coi biến Date như môt biền bình thường chỉ lưu ý la khi viết hàm dựng thì nhớ gọi nó là được vì mac định nó xẽ gọi hàm dựng không đối số
    giả sử class Nguoi có 3 thuôc tính là Ten, Tuoi, Data A bạn phải gọi thêm hàm dựng class Data
    vd:khai báo hàm dưng class Nguoi
    PHP Code:
    Nguoi(char *tenint tuoiint ngayint thangint nam):A(ngaythangnam)
    {
        
    ////gan Ten va Tuoi
    }
    ///hoac
    Nguoi(char *Tenint TuoiDate a):A(a)
    {
        
    ////gan ten va tuoi


  3. #3
    Ngày gia nhập
    04 2008
    Nơi ở
    HCMC
    Bài viết
    251

    Bạn nên xây dựng thêm hàm setDate và getDate trong class Date nhé.
    C++ Code:
    1. for(;;){cout<<"Busy"<<endl;}
    2. system("cls");
    Hãy ủng hộ cho quỹ phát triển cộng đồng C Việt
    http://congdongcviet.com/quyphattrien-congdongcviet.cpp

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

  1. nghĩa của 3 từ "principals", "artifacts", "securables" là như thế nào?
    Gửi bởi ntbao trong diễn đàn English for IT | Tiếng anh cho dân CNTT
    Trả lời: 2
    Bài viết cuối: 02-09-2017, 06:36 PM
  2. Chương trình quản lý sinh viên bằng cách xây dựng "lớp" trong C++
    Gửi bởi linhdong24 trong diễn đàn Thắc mắc lập trình C/C++/C++0x
    Trả lời: 22
    Bài viết cuối: 11-11-2011, 07:38 AM
  3. Bài tập C lỗi "syntax error" trong file định dạng lại kiểu dữ liệu "types.h"
    Gửi bởi grandthorn trong diễn đàn Thắc mắc lập trình C/C++/C++0x
    Trả lời: 10
    Bài viết cuối: 10-09-2011, 07:29 AM
  4. Phân biệt "Công nghệ", "Ngôn ngữ", "Công cụ" trong thế giới lập trình
    Gửi bởi nhuan07 trong diễn đàn Thắc mắc chung
    Trả lời: 2
    Bài viết cuối: 09-06-2011, 08:45 AM
  5. Problems : " recover tree " with input as " preorder" and "inorder"
    Gửi bởi HoangManhHa1991 trong diễn đàn Thắc mắc lập trình C/C++/C++0x
    Trả lời: 16
    Bài viết cuối: 13-04-2011, 10:19 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