Skip to content
Siamcoder

การสร้างและใช้งานคลาสใน C++

c++1 min read

การสร้างและใช้งานคลาส (Class) เป็นส่วนสำคัญของการเขียนโปรแกรมเชิงวัตถุในภาษา C++ โดยคลาสเป็นแม่แบบที่ใช้ในการสร้างวัตถุ (Object) ที่มีคุณสมบัติและพฤติกรรมที่กำหนดไว้

ตัวอย่างการสร้างและใช้งานคลาส Person ในภาษา C++:

#include <iostream>
#include <string>
class Person {
private:
std::string name;
int age;
public:
// Constructor
Person(const std::string& name, int age) {
this->name = name;
this->age = age;
}
// Method
void displayInfo() {
std::cout << "ชื่อ: " << name << std::endl;
std::cout << "อายุ: " << age << " ปี" << std::endl;
}
};
int main() {
// สร้างวัตถุ (Object) จากคลาส Person
Person person("John Doe", 25);
// เรียกใช้เมท็อด displayInfo()
person.displayInfo();
return 0;
}`

ในตัวอย่างนี้ เรากำหนดคลาส Person ที่มีฟิลด์ name และ age และเมท็อด displayInfo() ที่ใช้สำหรับแสดงข้อมูลบนหน้าจอ ในฟังก์ชัน main() เราสร้างวัตถุ person จากคลาส Person และเรียกใช้เมท็อด displayInfo() เพื่อแสดงข้อมูลของ person บนหน้าจอ

ในการใช้งานคลาส เราสามารถสร้างวัตถุ (Object) จากคลาสได้ด้วยการประกาศตัวแปรของคลาส และกำหนดค่าผ่าน Constructor ตามรูปแบบ ชื่อคลาส ชื่อตัวแปร(อาร์กิวเมนต์) เมื่อสร้างวัตถุแล้ว เราสามารถเรียกใช้เมท็อดของคลาสผ่านตัวแปรวัตถุได้

การใช้งานคลาสในภาษา C++ ช่วยให้เราสามารถโครงสร้างและจัดการโปรแกรมอย่างมีระเบียบและยืดหยุ่นมากยิ่งขึ้น และช่วยให้โปรแกรมมีความเป็นองค์กรภายในที่มีความสัมพันธ์และการทำงานร่วมกันอย่างมีประสิทธิภาพ

เพิ่มเติมเรื่องการใช้งานคลาสในภาษา C++ ได้ดังนี้:

  1. การเข้าถึงฟิลด์และเมท็อด: เมื่อกำหนดฟิลด์หรือเมท็อดในคลาสว่าเป็น public สามารถเข้าถึงฟิลด์และเรียกใช้เมท็อดได้โดยตรงผ่านตัวแปรวัตถุที่สร้างขึ้นจากคลาส
  2. การสืบทอดคลาส (Inheritance): เราสามารถสร้างคลาสย่อย (Derived Class) ที่สืบทอดคุณสมบัติและพฤติกรรมจากคลาสหลัก (Base Class) ได้ คลาสย่อยสามารถใช้งานฟิลด์และเมท็อดที่ถูกสืบทอดมาจากคลาสหลัก และสามารถเพิ่มฟิลด์และเมท็อดเพิ่มเติมได้
  3. การสร้าง Constructor หลายรูปแบบ: เราสามารถสร้าง Constructor หลายรูปแบบในคลาสเพื่อรองรับการกำหนดค่าเริ่มต้นของวัตถุตามต้องการ ตัวอย่างเช่น Constructor ที่ไม่มีพารามิเตอร์, Constructor ที่รับพารามิเตอร์เพื่อกำหนดค่าฟิลด์, และ Constructor ที่สืบทอดมาจากคลาสหลัก
  4. การเขียนเมท็อด Setter และ Getter: เพื่อให้สามารถเข้าถึงและกำหนดค่าฟิลด์ในคลาสได้อย่างควบคุม สามารถสร้างเมท็อด Setter เพื่อกำหนดค่าฟิลด์และเมท็อด Getter เพื่อเรียกค่าฟิลด์ได้
  5. การใช้งาน Static Member: เราสามารถกำหนดฟิลด์และเมท็อดในคลาสว่าเป็น Static ซึ่งจะเป็นฟิลด์หรือเมท็อดที่เป็นของคลาสโดยตรง และสามารถเรียกใช้งานได้โดยไม่ต้องสร้างวัตถุ

การใช้งานคลาสในภาษา C++ เป็นเครื่องมือที่สำคัญในการพัฒนาโปรแกรมเชิงวัตถุ ช่วยให้เราสามารถโครงสร้างและจัดการโค้ดได้อย่างเป็นระเบียบและยืดหยุ่น นอกจากนี้ การใช้งานคลาสยังช่วยในการลดการทับซ้อนของโค้ด และสามารถนำโค้ดที่สร้างขึ้นมาใช้ซ้ำในโปรแกรมอื่นๆ ได้ง่ายและมีประสิทธิภาพมากยิ่งขึ้น