14-函数调用运算符重载

简介: 14-函数调用运算符重载
#include<bits/stdc++.h>
using namespace std;
//函数调用运算符重载
//打印输出类
class MyPrint{
  public:
    void operator()(string test){
      cout<<test<<endl;
    }
    void aa(string test){
      cout<<"AA"<<endl; 
    }
}; 
void test01(){
  MyPrint myprint;
  myprint("hello world");
  //myprint.aa("hello world");
  //由于使用起来非常类似于函数调用,因此也称为仿函数 
}
int main()
{
  //函数调用运算符重载
    //函数调用运算符()也可以重载
    //由于重载后使用的方式非常像函数的调用,因此称为仿函数
    //仿函数没有固定写法,非常灵活
  test01();  
  return  0;
}


相关文章
|
6月前
|
编译器 C++
c++重载函数和重载运算符
c++重载函数和重载运算符
34 0
|
6月前
|
C++ 开发者
43运算符重载函数作为类成员函数和友元函数
43运算符重载函数作为类成员函数和友元函数
31 0
|
23天前
|
编译器
函数重载和重载函数有什么区别
【10月更文挑战第19天】函数重载和重载函数有什么区别
30 2
|
5月前
|
存储 编译器 C++
【C++】:拷贝构造函数和赋值运算符重载
【C++】:拷贝构造函数和赋值运算符重载
30 1
|
6月前
|
C++ 编译器
|
4月前
|
编译器 C++
【C++】详解运算符重载,赋值运算符重载,++运算符重载
【C++】详解运算符重载,赋值运算符重载,++运算符重载
|
6月前
|
程序员 编译器 C++
c++重载运算符和重载函数
c++重载运算符和重载函数
35 1
|
编译器 C++
36 C++ - 赋值(=)运算符重载
36 C++ - 赋值(=)运算符重载
31 0
|
编译器 C++
C++ 重载函数
C++ 重载函数
57 0
|
编译器 C++
C++的重载运算符和重载函数
C++ 允许在同一作用域中的某个函数和运算符指定多个定义,分别称为函数重载和运算符重载。 重载声明是指一个与之前已经在该作用域内声明过的函数或方法具有相同名称的声明,但是它们的参数列表和定义(实现)不相同。 当您调用一个重载函数或重载运算符时,编译器通过把您所使用的参数类型与定义中的参数类型进行比较,决定选用最合适的定义。选择最合适的重载函数或重载运算符的过程,称为重载决策。 C++ 中的函数重载 在同一个作用域内,可以声明几个功能类似的同名函数,但是这些同名函数的形式参数(指参数的个数、类型或者顺序)必须不同。您不能仅通过返回类型的不同来重载函数。 下面的实例中,同名函数print