ฟังก์ชั่น (Functions) C++


ในบทช่วยสอนนี้ เราจะเรียนรู้เกี่ยวกับฟังก์ชัน C++ และนิพจน์ฟังก์ชันโดยใช้ตัวอย่าง

ฟังก์ชันคือบล็อกของโค้ดที่ทำงานเฉพาะ สมมติว่าเราต้องสร้างโปรแกรมเพื่อสร้างวงกลมและระบายสี เราสามารถสร้าง 2 ฟังก์ชัน เพื่อแก้ปัญหานี้:

การแบ่งปัญหาที่ซับซ้อนออกเป็นส่วนย่อยๆ ทำให้โปรแกรมของเราเข้าใจง่ายและนำกลับมาใช้ใหม่ได้

  • ฟังก์ชันวาดวงกลม
  • ฟังก์ชันระบายสีวงกลม

ฟังก์ชั่นมีสองประเภท:

  1. ฟังก์ชันไลบรารีมาตรฐาน:กำหนดไว้ล่วงหน้าใน C++
  2. ฟังก์ชันที่ผู้ใช้กำหนด:สร้างโดยผู้ใช้


ในบทช่วยสอนนี้ เราจะเน้นไปที่ฟังก์ชันที่ผู้ใช้กำหนดเป็นส่วนใหญ่


C++ ฟังก์ชันที่ผู้ใช้กำหนด


C ++ อนุญาตให้โปรแกรมเมอร์กำหนดฟังก์ชันของตนเอง

โค้ดกลุ่มฟังก์ชันที่ผู้ใช้กำหนดเพื่อทำงานเฉพาะและกลุ่มของโค้ดนั้นจะได้รับชื่อ (identifier)

เมื่อเรียกใช้ฟังก์ชันจากส่วนใดส่วนหนึ่งของโปรแกรม ฟังก์ชันทั้งหมดจะรันโค้ดที่กำหนดไว้ในเนื้อหาของฟังก์ชัน


ประกาศฟังก์ชัน C++


ไวยากรณ์ในการประกาศฟังก์ชันคือ:

ชนิดข้อมูลที่จะส่งกลับ ชื่อฟังก์ชั่น(พารามิเตอร์) {

  องค์ประกอบของฟังก์ชั่น

}


นี่คือตัวอย่างการประกาศฟังก์ชัน

void greet() {
    cout << "Hello there!";
}

  • ชื่อของฟังก์ชันคือ greet()
  • ชนิดข้อมูลที่จะส่งกลับของฟังก์ชันคือ void
  • วงเล็บว่างหมายความว่าไม่มีพารามิเตอร์ใด ๆ
  • ตัวฟังก์ชันเขียนไว้ด้านใน {}


การเรียกใช้ฟังก์ชัน


ในโปรแกรมข้างต้น เราได้ประกาศฟังก์ชันที่ชื่อว่า greet()

ในการใช้ฟังก์ชัน greet() เราต้องเรียกใช้

ต่อไปนี้คือวิธีที่เราสามารถเรียกใช้ greet() ฟังก์ชันข้างต้นได้

int main() {
     
    greet(); 

}


ตัวอย่างที่ 1: ฟังก์ชัน ไม่มีพารามิเตอร์ (parameter)

#include <iostream>
using namespace std;

void greet() {
    cout << "Hello there!";
}

int main() {

    greet();

    return 0;
}



ตัวอย่างที่ 2: ฟังก์ชัน มีพารามิเตอร์ (parameter) 1 ตัวแปร


ตัวอย่างเช่น ให้เราพิจารณาฟังก์ชันด้านล่าง:

การทำงานของโปรแกรม คือ

  • int main() เริ่มที่ฟังก์ชัน main
  • int n = 7; ตัวแปร n เป็นชนิดข้อมูลเลขจำนวนเต็ม มีค่าเป็น 7
  • printNum(n); เรียกใช้ฟังก์ชันชื่อ printNum มีค่าอาร์กิวเมนต์เป็น 7 ตามค่าตัวแปร n
  • ฟังก์ชัน main ส่งค่า ค่าอาร์กิวเมนต์ (argument) ไปยัง พารามิเตอร์ ชื่อ num ของฟังก์ชัน printNum มีชนิดข้อมูลเลขจำนวนเต็ม
  • cout << num; อ็อบเจกต์ cout แสดงเอาท์พุต พารามิเตอร์ num บนหน้าจอ



#include <iostream>
using namespace std;

void printNum(int num) {
    cout << num;
}

int main() {
    int n = 7;

    printNum(n);

    return 0;
}



ตัวอย่างที่ 3: ฟังก์ชัน มีพารามิเตอร์ (parameter) 2 ตัวแปร


ในโปรแกรมข้างล่าง เราได้ใช้ฟังก์ชันที่มี พารามิเตอร์ n1 คือ int และ พารามิเตอร์ n2 คือ double



  • ฟังก์ชัน main ส่งค่า ค่าอาร์กิวเมนต์ num1 ไปยัง พารามิเตอร์ ชื่อ n1 ของฟังก์ชัน displayNum มีชนิดข้อมูลเลขจำนวนเต็ม
  • ฟังก์ชัน main ส่งค่า ค่าอาร์กิวเมนต์ num2 ไปยัง พารามิเตอร์ ชื่อ n2 ของฟังก์ชัน displayNum มีชนิดข้อมูลเลขทศนิยม

#include <iostream>
using namespace std;

void displayNum(int n1, double n2) {
    cout << "The int number is " << n1 << endl;
    cout << "The double number is " << n2 << endl;
}

int main() {

    int num1 = 5;
    double num2 = 5.5;

    displayNum(num1, num2);

    return 0;
}


Leave a Reply

Your email address will not be published. Required fields are marked *