identityexpr.h

来自「精确的函数表达模板,里面包含了许多C和C++的函数表达模板」· C头文件 代码 · 共 47 行

H
47
字号

/****************************************************************************
 * Copyright (C) 2001        Piece Wise Functions
 *                           Carlo Galotto
 *                           Italy
 *                           Email: carlo.galotto@libero.it
 *                                  cgalotto@hotmail.com
 *
 *
 * This framework is free  software; you can  redistribute it and/or modify
 * it. This framework is distributed  in the  hope  that  it  will  be useful,
 * but WITHOUT ANY WARRANTY;  without even the   implied  warranty of
 * MERCHANTABILITY  or FITNESS FOR A PARTICULAR PURPOSE.
 * The proposed framework is based upon the paper "Expression Templates" by
 * Todd Veldhuizen.
 ****************************************************************************/

// Class: IdentityExpr

#ifndef __IDNTTEXP_H  //Required for current class
  #define __IDNTTEXP_H

#include <functional> // required for base classes

/****************************************************************************
 * IdentityExpr is a placeholder for the variable in the expression. */   template <class T>   class IdentityExpr : public std::unary_function<T, T>   {      public:         typedef std::unary_function<T, T>::argument_type argument_type;
         typedef std::unary_function<T, T>::result_type result_type;
      public:         // Default constructor         IdentityExpr() {}         // Evaluator operator         result_type operator()(const argument_type& x) const { return x; }         // Destructor         ~IdentityExpr() {}   };

#endif

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?