ฟังก์ชัน main() สามารถเรียกตัวเองว่า C++ นี่เป็นตัวอย่างการเรียกซ้ำเนื่องจากหมายถึงฟังก์ชันที่เรียกตัวเอง โดยมีโปรแกรมสาธิตดังนี้
ตัวอย่าง
#include<iostream> using namespace std; int main() { static int x = 1; cout << x << " "; x++; if(x == 11) { return 0; } main(); }
ผลลัพธ์
ผลลัพธ์ของโปรแกรมข้างต้นมีดังนี้
1 2 3 4 5 6 7 8 9 10
ตอนนี้ เรามาทำความเข้าใจโปรแกรมข้างต้นกัน
ตัวแปร x เป็นตัวแปรคงที่ใน main() ค่าของมันถูกแสดงและจากนั้นจะเพิ่มขึ้น จากนั้นคำสั่ง if จะถูกใช้เพื่อจัดเตรียมวิธีการสิ้นสุดโปรแกรม มิฉะนั้นจะเรียกตัวเองว่าไม่สิ้นสุด โปรแกรมจะสิ้นสุดเมื่อค่าของ x เป็น 11 ในที่สุด ฟังก์ชัน main() จะเรียกตัวเองโดยใช้การเรียกฟังก์ชัน main() ข้อมูลโค้ดสำหรับสิ่งนี้มีดังต่อไปนี้
int main() { static int x = 1; cout << x << " "; x++; if(x == 11) { return 0; } main(); }