crash68.c

来自「gcc3.2.1源代码」· C语言 代码 · 共 71 行

C
71
字号
// Build don't link:// // Copyright (C) 2001 Free Software Foundation, Inc.// Contributed by Nathan Sidwell 25 Jul 2001 <nathan@codesourcery.com>// Origin: gustavo@geneura.ugr.es// Bug 3624. Template instantiation of a reference type was not// converted from reference when doing a call.#include <iostream>using namespace std;template <class A, class B, class C, C& c, bool d> class eo: public A{public:  eo()   {    cout << this->x << " " << this->y << " "	 << c(*this) << " "	 << ((d)?"true":"false") << endl;  }  private:  B b;};struct XY{  float x, y;  XY(): x(1), y(0.1) {}};float fitness(const XY& a){  return a.x + a.y;}struct fitness2{  float operator()(const XY& a)  {    return a.x - a.y;  }    float f(const XY& a)  {    return a.x - a.y;  }};struct fitness3{  float operator()(const XY& a)  {    return a.x / a.y;  }};fitness2 f2;fitness3 f3;int main(){  eo<XY, float, fitness2, f2, true> eo2;  eo<XY, float, fitness3, f3, true> eo3;  return 0;}

⌨️ 快捷键说明

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