boost_has_nrvo.cxx

来自「boost库提供标准的C++ API 配合dev c++使用,功能更加强大」· CXX 代码 · 共 58 行

CXX
58
字号
//  (C) Copyright Terje Slettebo 2001.
//  (C) Copyright John Maddock 2001. 
//  Use, modification and distribution are subject to the 
//  Boost Software License, Version 1.0. (See accompanying file 
//  LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)

//  See http://www.boost.org/libs/config for most recent version.

//  MACRO:         BOOST_HAS_NRVO
//  TITLE:         Named return value optimisation.
//  DESCRIPTION:   Named return value optimisation.


namespace boost_has_nrvo
{

class test_class
{
public:
  test_class() {}
  test_class(const test_class &other)
  {
    ++copy_count;
  }

  static int copy_count;
};

int test_class::copy_count;

test_class f()
{
  test_class nrv;

  return nrv;
}

int test()
{
  test_class::copy_count=0;

  f();

  return test_class::copy_count;
}

} // namespace boost_has_nrvo










⌨️ 快捷键说明

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