new27.c
来自「用于进行gcc测试」· C语言 代码 · 共 41 行
C
41 行
// PR c++/34862// { dg-do run }// { dg-options "-O2" }typedef __SIZE_TYPE__ size_t;extern "C" void abort ();struct T{ void *operator new (size_t, char *&); T () { i[0] = 1; i[1] = 2; } int i[2];};void *T::operator new (size_t size, char *&p){ void *o = (void *) p; p += size; return o;}T *f (char *&x){ return new (x) T ();}char buf[10 * sizeof (T)] __attribute__((aligned (__alignof (T))));intmain (){ char *p = buf; T *t = f (p); if (p != buf + sizeof (T)) abort (); if (t->i[0] != 1 || t->i[1] != 2) abort ();}
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?