C++ 中的匿名类


匿名实体是指未指定名称的任何内容。未提供名称的类称为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

更新于:16-Oct-2019

2K+ 浏览

启动你的 职业

完成课程以获得认证

开始学习
广告