inline8.c

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

C
68
字号
// Origin: Gerald Pfeifer <pfeifer@dbai.tuwien.ac.at>// Special g++ Options: -O1#include <map>#include <cstdlib>using namespace std;class NAMES_ITEM    {public:    char *name;      NAMES_ITEM(const NAMES_ITEM& item2);      NAMES_ITEM(const char* name2);      ~NAMES_ITEM();      bool operator==(const NAMES_ITEM& n) const;    };NAMES_ITEM::NAMES_ITEM (const NAMES_ITEM& item2)        {        size_t length=std::strlen(item2.name);        name=new char[length+1];        std::memcpy(name,item2.name,length+1);        }NAMES_ITEM::NAMES_ITEM (const char* name2)              {        size_t length=std::strlen(name2);        name=new char[length+1];        std::memcpy(name,name2,length+1);        }NAMES_ITEM::~NAMES_ITEM (){  if (std::strcmp (name, "one") != 0)    abort ();    name=0;}bool NAMES_ITEM::operator==(const NAMES_ITEM& n) const{  return (std::strcmp(name,n.name) == 0);}bool operator<(const NAMES_ITEM& n1, const NAMES_ITEM& n2)    {    return (std::strcmp(n1.name,n2.name) < 0);    }    typedef map<NAMES_ITEM,size_t,less<NAMES_ITEM> > lookup_t;    lookup_t lookup;	NAMES_ITEM item ("one");main()  {        lookup.insert(pair<NAMES_ITEM,size_t>(item,0));  }

⌨️ 快捷键说明

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