When we control the event,we control your lives
 
Trang ChínhTìm kiếmĐăng kýĐăng Nhập
Tìm kiếm
 
 

Display results as :
 
Rechercher Advanced Search
Latest topics
» Tô màu theo vùng quét
Ép kiểu cho con trỏ trong kế thừa Icon_minitimeTue Aug 13, 2013 4:18 pm by minhlap

» authentischen Hermes Lindy Taschen
Ép kiểu cho con trỏ trong kế thừa Icon_minitimeWed Jan 23, 2013 11:15 am by cangliang

» Hermes Bag
Ép kiểu cho con trỏ trong kế thừa Icon_minitimeWed Jan 23, 2013 11:14 am by cangliang

» Hermes Evelyn pm
Ép kiểu cho con trỏ trong kế thừa Icon_minitimeWed Jan 23, 2013 11:13 am by cangliang

» Hermes Kelly bag billig
Ép kiểu cho con trỏ trong kế thừa Icon_minitimeMon Jan 21, 2013 8:57 am by cangliang

» Hermes Constance Bag
Ép kiểu cho con trỏ trong kế thừa Icon_minitimeMon Jan 21, 2013 8:56 am by cangliang

» Discout Hermes Belt
Ép kiểu cho con trỏ trong kế thừa Icon_minitimeMon Jan 21, 2013 8:55 am by cangliang

» Christian Louboutin Love Flats
Ép kiểu cho con trỏ trong kế thừa Icon_minitimeTue Jan 15, 2013 12:25 pm by cangliang

» Christian Louboutin Love Flats
Ép kiểu cho con trỏ trong kế thừa Icon_minitimeTue Jan 15, 2013 12:25 pm by cangliang

Navigation
 Portal
 Diễn Đàn
 Thành viên
 Lý lịch
 Trợ giúp
 Tìm kiếm
January 2020
MonTueWedThuFriSatSun
  12345
6789101112
13141516171819
20212223242526
2728293031  
CalendarCalendar
Diễn Đàn
Affiliates
free forum


Share
 

 Ép kiểu cho con trỏ trong kế thừa

Go down 
Tác giảThông điệp
symphonyenigmatic
Thành viên bậc 3
Thành viên bậc 3
symphonyenigmatic

Tổng số bài gửi : 61
Points : 104
Reputation : 6
Join date : 26/07/2009
Age : 31
Đến từ : http:://thienthancntt.tk

Ép kiểu cho con trỏ trong kế thừa Empty
Bài gửiTiêu đề: Ép kiểu cho con trỏ trong kế thừa   Ép kiểu cho con trỏ trong kế thừa Icon_minitimeSun Aug 02, 2009 6:07 pm

Thằng con kế thừa từ thằng cha, nhưng mà thằng cha lại không thể dùng con trỏ để truy nhập đến thằng con. Muốn điều đó xảy ra, thì phải ép con trỏ.
Code về ép con trỏ như sau
File diem.h
Code:

http://diem.h
//dinh nghia lop Diem
#ifndef DIEM_H
#define DIEM_H

class Diem
{
protected:
   float x,y;
public:
   Diem (float a=0, float b=0);
   void THDiem(float a, float b);
   float TDoX() const
   {
      return x;
   }
   float TDoY() const
   {
      return y;
   }
   friend ostream & operator << (ostream & out, const Diem &p);
};
#endif
File diem.cpp
Code:

 //diem.cpp
 //Dih nghia cac ham thanh vien cua lop Diem
 #include <iostream.h>
 #include "diem.h"

Diem::Diem(float a, float b)
 {
   THDiem(a,b);
 }

 void Diem::THDiem(float a, float b)
 {
   x = a;
   y = b;
 }

 ostream & operator <<(ostream &out, const Diem &p)
 {
   out << '[' << p.x << ", " << p.y << ']';
   return out;
 }
File Duongtron.h
Code:

http://duongtron.h
//dinh nghia lop duongtron
 #ifndef DUONGTRON_H
 #define DUONGTRON_H

 #include "diem.h"

 class DuongTron : public Diem
 {
 protected:
   float bankinh;
 public:
   DuongTron(float r=0.0, float a=0, float b=0);
   void KTBK(float r);
   float LayBK() const;
   float DienTich() const;
   friend ostream & operator <<(ostream & Output, const DuongTron &C);
 };
 #endif
File duongtron.cpp
Code:

 //duongtron.cpp
 //Dinh nghia cac ham thanh vien cua lop BanKinh.cpp
 #include <iostream.h>
 #include <iomanip.h>
 #include "duongtron.h"

 DuongTron::DuongTron(float r, float a, float b): Diem(a, b)
 {
   bankinh = r;
 }

 void DuongTron::KTBK(float r)
 {
   bankinh = r;
 }

 float DuongTron::LayBK() const
 {
   return bankinh;
 }

 float DuongTron::DienTich() const
 {
   return 3.14159 * bankinh * bankinh;
 }

 //Xuat duongtron theo dang: ToaDoTam = [x, y]; Bankinh = #.##
 ostream & operator <<(ostream &Output, const DuongTron &C)
 {
   Output << "Toa Do Tam = [" << C.x << ", " << C.y
         << "]; Ban Kinh = " << setiosflags(ios::showpoint)
         << setprecision(2) << C.bankinh;
   return Output;
 }
File thihanh.cpp
Code:

//Chuong trinh thi hanh
//Ep cac con tro lop co so toi con tro lop dan xuat
#include <iostream.h>
#include <iomanip.h>
#include "diem.h"
#include "diem.cpp"
#include "duongtron.h"
#include "duongtron.cpp"

 void main()
 {
   Diem *pt, P(3.5, 5.3);
   DuongTron *cp, C(2.7, 1.2, 8.9);
   cout << "Diem P: "<<P<<endl<<"Duong Tron C: "<<C<< endl;
   //Xu ly 1 duong tron nhu 1 diem, chi xem 1 phan lop co so
   pt = &C;
   cout << endl << "Duong Tron C (va *pt): "<<*pt<<endl;
   
   pt = &C;
   cp = (DuongTron *) pt;
   cout << endl <<  endl
            <<*cp<< endl
            << cp->DienTich() << endl;
 
   pt = &P;
   cp = (DuongTron *) pt;
   cout << endl
            <<*cp<< endl
            <<cp->DienTich() << endl;
 
 }
Về Đầu Trang Go down
http://http:://thienthancntt.tk
 
Ép kiểu cho con trỏ trong kế thừa
Về Đầu Trang 
Trang 1 trong tổng số 1 trang

Permissions in this forum:Bạn không có quyền trả lời bài viết
minhlap.allgoo.us :: Lập trình :: Lập Trình Hướng Đối Tượng,Đồ Họa OpenGL C, C++-
Chuyển đến