init-ref3.c

来自「gcc-you can use this code to learn somet」· C语言 代码 · 共 48 行

C
48
字号
// Origin: Peter Schmid <schmid@snake.iap.physik.tu-darmstadt.de>// { dg-do link }template <class T>class Ptr {protected:  T * ptr;public:    Ptr(void) : ptr(0) { };  Ptr(T * p) : ptr(p) { };    ~Ptr(void) { delete ptr; }    operator T & () { return *ptr; }};class base {public:   base(void) { }  ~base(void) { }};class foo : public base {private:  foo(const foo & rv);  public:    foo(void) { }  ~foo(void) { }};void func2(base & b) {  // ...}int main () {  Ptr<foo> f = new foo;  /* This should not result in a copy; the result of the conversion     operator should be bound directly to the reference argument to     `func2'.  */  func2(f);}

⌨️ 快捷键说明

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