c++匿名对象

简介: 匿名对象没有名字的对象。这是一个自定义的类。

匿名对象

没有名字的对象。

这是一个自定义的类。

class A
{
public:
  A(int a = 0)
    :_a(a)
  {
    cout<<"A(int a = 0)" << endl;
  }
  ~A()
  {
    cout << "~A()" << endl;
  }
private:
  int _a;
};
  • 生命周期只有一行
  • 没有名字
int main()
{
  A a1;   //正常定义一个对象
  //  A aa1();  //不能这么定义对象,因为编译器无法识别这个是函数声明,还是对象的定义。
  A();    //匿名对象定义方法。   生命周期只有一行,下一行直接调用析构函数。
}

匿名对象有什么用呢?

比如有这样一个类,我们只想使用类的一个功能,但并不需要使用对象。

class Solution
{
public:
  int Sim_Solution(int n)
  {
    //.....
    return n;
  }
};
int main()
{
  Solution slt;
  slt.Sim_Solution(10);
  Solution().Sim_Solution(10);  //只需一行即可。
  return 0;
}

如果单纯的想调用函数,我们可以不必将类实例化,仅仅需使用匿名对象定义即可,更加简洁。

目录
相关文章
|
3天前
|
存储 数据安全/隐私保护 C++
基于C++的面向对象程序设计:类与对象的深入剖析
基于C++的面向对象程序设计:类与对象的深入剖析
19 1
|
3天前
|
编译器 C语言 C++
C++类和对象的细节原理:this指针、构造函数和析构函数、深浅拷贝、运算符重载、初始化列表、类的各种成员和方法
C++类和对象的细节原理:this指针、构造函数和析构函数、深浅拷贝、运算符重载、初始化列表、类的各种成员和方法
19 0
|
15天前
|
存储 安全 编译器
C++类和对象万字详解(典藏版)
C++类和对象万字详解(典藏版)
|
19天前
|
C语言 C++
开心档之 C++ 类 & 对象
开心档之 C++ 类 & 对象
|
22天前
|
C++
C++——类和对象(初始化列表、匿名对象、static成员、类的隐式类型转换和explicit关键字、内部类)
C++——类和对象(初始化列表、匿名对象、static成员、类的隐式类型转换和explicit关键字、内部类)
|
22天前
|
C++
C++——类和对象之拷贝构造
C++——类和对象之拷贝构造
|
22天前
|
编译器 C++
C++——类和对象(构造函数与析构函数)
C++——类和对象(构造函数与析构函数)
|
22天前
|
存储 Java 编译器
C++——类和对象(了解面向过程和面向对象、初步认识类和对象、类大小的计算、this指针)
C++——类和对象(了解面向过程和面向对象、初步认识类和对象、类大小的计算、this指针)
|
29天前
|
C++
c++类与对象(五):友元、内部类、临时对象、匿名对象
c++类与对象(五):友元、内部类、临时对象、匿名对象
12 0
|
29天前
|
编译器 C++
C++类与对象(四):再谈构造函数(详解初始化列表)、Static成员
C++类与对象(四):再谈构造函数(详解初始化列表)、Static成员
26 0

相关产品

  • 云迁移中心