Boost.Ref
프로그래밍 언어/boost2015. 4. 30. 17:05
boost::ref
call-by-reference 로써 일반적인 레퍼런스 참조
boost::cref
boost::ref의 const 형이다
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 | #include "stdafx.h" #include <boost/bind.hpp> #include <boost/ref.hpp> class test { public: test() { cout << "생성자" << endl; } ~test() { cout << "소멸자" << endl; } test(const test& s) { cout << "복사 생성자" << endl; } }; void func(int a, std::ostream &os) { os << a << endl; } int _tmain(int argc, _TCHAR* argv[]) { test testObj; test copyObj = boost::ref(testObj); // 복사 (복사생성자 O) test &refObj = boost::ref(testObj); // 레퍼런스 (혹사생성자 X) int x = 10; boost::bind(func, _1, boost::ref(std::cout))(x); return 0; } |
'프로그래밍 언어 > boost' 카테고리의 다른 글
Boost.Function (0) | 2015.05.01 |
---|---|
Boost.Bind (0) | 2015.04.30 |
Boost.Atomic (0) | 2015.04.30 |
Boost.ScopeExit (0) | 2015.04.28 |
Boost.Pool (0) | 2015.04.28 |