pretty3.c

来自「this is a gcc file, you can download it 」· C语言 代码 · 共 47 行

C
47
字号
// Copyright (C) 1999 Free Software Foundation, Inc.// Contributed by Nathan Sidwell 21 Nov 1999 <nathan@acm.org>// make sure __FUNCTION__ and __PRETTY_FUNCTION__ work in templates#include <stdio.h>#include <string.h>static bool bad = false;template<class T> void f1 (T){  char const *function = __FUNCTION__;  char const *pretty = __PRETTY_FUNCTION__;    printf ("generic\n");  printf ("__FUNCTION__ %s\n", function);  printf ("__PRETTY_FUNCTION__ %s\n", pretty);    if (strcmp (function, "f1"))    bad = true;  if (strcmp (pretty, "void f1(T) [with T = float]")) // only for float instantiation    bad = true;}template<> void f1<int> (int){  char const *function = __FUNCTION__;  char const *pretty = __PRETTY_FUNCTION__;    printf ("specialized\n");  printf ("__FUNCTION__ %s\n", function);  printf ("__PRETTY_FUNCTION__ %s\n", pretty);    if (strcmp (function, "f1"))    bad = true;  if (strcmp (pretty, "void f1(T) [with T = int]"))    bad = true;}int main (){  f1(0);    // f1<int>  f1(0.0f); // f1<float>  return bad;}

⌨️ 快捷键说明

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