zoukankan      html  css  js  c++  java
  • [007]C++写一个函数,返回它自己

    题目:

          写一个函数,返回它自身,方法用C或者C++即可。

    方法一:

          用C++中仿函数的方法,来实现返回自身的引用。

     1 #include<iostream>
     2 using namespace std;
     3 
     4 class Fang {
     5 public:
     6     Fang& operator()(){
     7         cout << "a" <<endl;
     8         return *this;
     9     }
    10 };
    11 
    12 int main() {
    13     Fang F;
    14     F()()();
    15     F.operator()()();
    16 
    17     system("pause");
    18 }

    我们可以选择显示显示或者隐式调用,都可以。

    另外,用仿函数还可以写成这种:

     1 #include<iostream>
     2 using namespace std;
     3 
     4 class Fang {
     5 public:
     6     Fang& operator()(Fang &a){
     7         cout << "a" <<endl;
     8         return *this;
     9     }
    10 };
    11 
    12 int main() {
    13     Fang F;
    14     F.operator()(F);
    15     F((((F))));
    16     F(F(F.operator()((F))));
    17 
    18     system("pause");
    19 }

    上述的两份代码中,第6行都需要返回引用,如果不是的话,则在调用时返回就是Fang的拷贝。

    方法二:S-Expression

    暂略

  • 相关阅读:
    中风后遗症
    慢性湿疹半年
    女子脚背痒肿案
    肾盂肾炎病案
    鼻衄二则
    糖尿病病案
    慢性肠炎2例
    子宫肌瘤病案2例
    眩晕病案
    前列腺炎病案3例
  • 原文地址:https://www.cnblogs.com/hustcser/p/2947514.html
Copyright © 2011-2022 走看看