| Virtual Function  ในบทนี้เราจะมาพูดถึง virtual function 
        กันนะครับ 
         
          |  |  |  |   
          |  | #include <iostream.h>
class one
{
public:
	void number(void) {cout<<"Number one\n";}
};
class two:public one
{
public:
	void number(void) {cout<<"Number two\n";}
};
class three:public one
{
public:
	void number(void) {cout<<"Number three\n";}
};
class four:public one
{
int dd;
};
int main()
{
one *a;
	a=new one;
	a->number();
	delete a;
	a=new two;
	a->number();
	delete a;
	a=new three;
	a->number();
	delete a;
	a=new four;
	a->number();
	delete a;
	return 0;
} |  |   
          |  |  |  |  [Download Code]
 ตัวอย่างนี้เป็นเพียงการเกริ่นนำครับ 
        จะเห็นตัวอย่างนี้ไม่มีอะไรใหม่นะคัรบ ก็คือตัวที่เป็นแม่จะสามารถไปเท่ากับตัวที่เป็นลูกได้นะครับ 
        เมื่อ Run โปรแกรมออกมาจะมีประโยชน์เหมือนกันหมดครับ ทั้งนี้เพราะโปรแกรมจะไปเรียกคำสั่งจากตัวคลาสแม่ก่อนครับ 
 
         
          |  |  |  |   
          |  | #include <iostream.h>
class one
{
public:
	virtual void number(void) {cout<<"Number one\n";}
};
class two:public one
{
public:
	void number(void) {cout<<"Number two\n";}
};
class three:public one
{
public:
	void number(void) {cout<<"Number three\n";}
};
class four:public one
{
int dd;
};
int main()
{
one *a;
	a=new one;
	a->number();
	delete a;
	a=new two;
	a->number();
	delete a;
	a=new three;
	a->number();
	delete a;
	a=new four;
	a->number();
	delete a;
	return 0;
} |  |   
          |  |  |  |  [Download Code]
 ตัวอย่างนี้เหมือนกับตัวอย่างแรกยกเว้นมีคำสั่ง 
        virtual อยู่หน้าคำสั่งในคลาส one เท่านั้นเอง จะเห็นแล้วนะครับว่า virtual 
        function ช่วยอะไรเราบ้าง การใช้ virtual function ในโปรแกรมนั้นจะช่วยเราได้มาก 
        โดยเฉพาะถ้าเรามีฟังก์ชั่นชื่อเหมือนกัน มีตัวแปรในวงเล็บเหมือนกัน และเราใช้พอยต์เตอร์ช่วยในการทำงาน 
        เวลาเราเขียนโปรแกรมนั้น เราอาจจะให้มีฟังก์ชั่นเหมือนกันหลายๆตัว แต่ทำคนละคำสั่ง 
        จากนั้นเวลาเราเรียกใช้เราก็ใช้ชื่อเดียว โปรแกรมก็จะไปเรียกคำสั่งที่ถูกต้องมาเอง 
        นอกจากจะง่ายต่อการจำชื่อฟังก์ชั่นแล้ว ยังง่ายต่อการเขียนโค้ดด้วยครับ   ก็จบไปแล้วนะครับสำหรับการเขียนโปรแกรมภาษา 
        C++ ต่อไปก็เป็นหน้าที่ของเพื่อนๆ แล้วล่ะครับที่จะไปเสาะแสวงหาความรู้อื่นๆ 
        ก็ขอให้โชคดีนะครับ |