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

Đề tài: Truy cập private lớp cơ sở

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

    Wink Truy cập private lớp cơ sở

    Chào các bác, em đang học lập trình đối tượng. Có câu hỏi này muốn hỏi.
    Mình có 3 lớp là Shape và lớp Rectangle,Triangle kế thừa public từ Shape.
    class Shape{
    int type;
    public:
    void setType(int t) {type = t;}
    int getType() {return type;}
    virtual int Area() = 0;
    ...
    };
    class Rectangle:public Shape{
    int width,height;
    public:
    Shape(int w=0,int h=0):width(w),height(h) {Shape::setType(1);}
    int Area() {return width*height;}
    ...
    };
    class Triangle: public Shape{
    ...................
    };
    Bây giờ em muốn viết hàm getType() cho lớp Rectangle và Triangle nhưng không biết làm thế nào truy cập được biến type. Mong các bác chỉ giúp!
    Đã được chỉnh sửa lần cuối bởi Ipv6 : 03-04-2009 lúc 02:23 PM.

  2. #2
    Ngày gia nhập
    07 2006
    Nơi ở
    Hanoi, Vietnam
    Bài viết
    2,750

    Ở lớp Shape đã có 2 methods là getType và setType, tại sao không dùng nó? type là biến private thì làm sao bạn truy cập được từ lớp kế thừa?
    Email: admin[@]congdongcviet.com | CC to: info[@]congdongcviet.com
    Phone: 0972 89 7667 (Office: 04 6329 2380)
    Yahoo & Skype: dreaminess_world (Vui lòng chỉ rõ mục đích ngay khi liên hệ, cảm ơn!)

    Một người nào đó coi thường ý thức kỷ luật cũng có nghĩa là người đó đã coi thường tương lai số phận của chính bản thân người đó. Những người coi thường ý thức kỷ luật sẽ không bao giờ có được sự thành công trong sự nghiệp!

  3. #3
    Ngày gia nhập
    04 2009
    Bài viết
    5

    Thanks bác admin. Ý em là làm sao xây dựng được hàm getType trong hai lớp Rectangle và Triangle mà khi goi đến thì lần lượt trả về giá trị 1 và 2 ? Nếu như không truy xuất biến type thì làm thể nào viết được hàm getType?

  4. #4
    Ngày gia nhập
    07 2007
    Nơi ở
    TP.HCM
    Bài viết
    199

    Ý Dreaminess là bạn đã xây dựng getType ở lớp cơ sở rồi thì lớp con không cần xây dựng lại nữa. Các đối tượng kiểu Rectangle và Triangle vẫn gọi được getType mà.

  5. #5
    Ngày gia nhập
    04 2009
    Bài viết
    5

    Ah đúng rồi. Mình nhầm lẫn chút. Thanks các bác.

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

  1. Về vấn đề truy thành phần private
    Gửi bởi ductri_vn trong diễn đàn Nhập môn lập trình C#, ASP.NET
    Trả lời: 6
    Bài viết cuối: 10-09-2013, 04:22 PM
  2. Hàm trong C++ Truy cập đến biến private từ 1 hàm khác
    Gửi bởi thitcholaotien trong diễn đàn Nhập môn lập trình C/C++
    Trả lời: 17
    Bài viết cuối: 17-01-2012, 08:36 PM
  3. Lập trình C++ Làm sao để truy xuất thuộc tính private của lớp cha
    Gửi bởi luongvancong trong diễn đàn Thắc mắc lập trình C/C++/C++0x
    Trả lời: 13
    Bài viết cuối: 27-10-2011, 05:00 PM
  4. Lỗi private trong việc truy xuất lớp
    Gửi bởi small_ant trong diễn đàn Thắc mắc lập trình C/C++/C++0x
    Trả lời: 3
    Bài viết cuối: 28-09-2010, 08:19 PM
  5. hàm friend ko truy nhập vào được private
    Gửi bởi lookfordream trong diễn đàn Thắc mắc lập trình Visual C++
    Trả lời: 12
    Bài viết cuối: 20-08-2010, 08:04 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