เอนทิตีนิรนามคือสิ่งที่ถูกกำหนดโดยไม่มีชื่อ คลาสที่ไม่มีชื่อเรียกว่า คลาสนิรนามใน c++ . คลาสนิรนามเป็นคลาสพิเศษที่มีคุณสมบัติพื้นฐานเพียงอันเดียว
-
เนื่องจากไม่มีชื่อกำหนดให้กับคลาส จึงไม่มีคอนสตรัคเตอร์ที่จัดสรรให้ แม้ว่าจะมีตัวทำลายล้างอยู่ที่นั่นเพื่อจัดสรรคืนบล็อกหน่วยความจำ
-
คลาสไม่สามารถใช้เป็นองค์ประกอบของฟังก์ชันได้ เช่น คุณไม่สามารถส่งผ่านเป็นอาร์กิวเมนต์หรือไม่สามารถยอมรับค่าที่ส่งคืนจากฟังก์ชันได้
ไวยากรณ์สำหรับกำหนดคลาสที่ไม่ระบุชื่อใน c++
class {
//data members
// member fucntions
} การเขียนโปรแกรมบางอย่างเพื่อแสดงการทำงานของคลาสนิรนามใน c++
-
การสร้างคลาสนิรนามและการกำหนดและการใช้วัตถุเดียว -
เราจะกำหนดคลาสที่ไม่ระบุชื่อและประกาศวัตถุโดยใช้ซึ่งเราจะใช้สมาชิกของคลาส
ตัวอย่าง
#include <iostream>
using namespace std;
class{
int value;
public:
void setData(int i){
this->value = i;
}
void printvalues(){
cout<<"Value : "<<this->value<<endl;
}
}
obj1;
int main(){
obj1.setData(10);
obj1.printvalues();
return 0;
} ผลลัพธ์
Value : 10
-
การสร้างคลาสที่ไม่ระบุชื่อและการกำหนดและการใช้สองวัตถุ -
เราสามารถมีคลาสที่ไม่ระบุชื่อได้หลายอ็อบเจ็กต์และใช้ในโค้ดของเรา โปรแกรมด้านล่างแสดงการทำงาน -
ตัวอย่าง
#include <iostream>
using namespace std;
class{
int value;
public:
void setData(int i){
this->value = i;
}
void print(){
cout<<"Value : "<<this->value<<endl;
}
}
obj1,obj2;
int main(){
cout<<"Object 1 \n";
obj1.setData(10);
obj1.print();
cout<<"Object 2 \n";
obj1.setData(12);
obj1.print();
return 0;
} ผลลัพธ์
Object 1 Value : 10 Object 2 Value : 12