锘??xml version="1.0" encoding="utf-8" standalone="yes"?>国产99久久精品一区二区,亚洲国产精品嫩草影院久久,久久久久久国产精品美女http://m.shnenglu.com/tianbianlan/category/10969.htmlzh-cnSat, 25 Jul 2009 05:49:30 GMTSat, 25 Jul 2009 05:49:30 GMT60Boost.Regex搴撳涔?fàn)绗旇?/title><link>http://m.shnenglu.com/tianbianlan/archive/2009/07/24/91015.html</link><dc:creator>澶╄竟钃?/dc:creator><author>澶╄竟钃?/author><pubDate>Fri, 24 Jul 2009 03:48:00 GMT</pubDate><guid>http://m.shnenglu.com/tianbianlan/archive/2009/07/24/91015.html</guid><wfw:comment>http://m.shnenglu.com/tianbianlan/comments/91015.html</wfw:comment><comments>http://m.shnenglu.com/tianbianlan/archive/2009/07/24/91015.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://m.shnenglu.com/tianbianlan/comments/commentRss/91015.html</wfw:commentRss><trackback:ping>http://m.shnenglu.com/tianbianlan/services/trackbacks/91015.html</trackback:ping><description><![CDATA[     鎽樿:   鍦–++緙栫▼涓紝鏈変竴鐐硅浜烘尯閬楁喚鐨勫氨鏄疌++灝氫笉鏀寔姝e垯琛ㄨ揪寮忥紝榪欒寰堝鐢ㄦ埛涓轟簡緙栧啓鏀寔姝e垯琛ㄨ揪寮忕▼搴忚屼笉寰椾笉鏀懼純C++銆傜劧鑰岋紝Boost.Regex搴撳~琛ヤ簡C++鍦ㄨ繖鏂歸潰鐨勭┖鐧斤紝瀹冧嬌C++寰堝ソ鐨勬敮鎸佸悇縐嶅紩鎿庣殑姝e垯琛ㄨ揪寮忋?       緇撳悎鎴戠殑瀛︿範(fàn)錛岄愭鍒嗘瀽Boost.Regex搴撱?  &nbs...  <a href='http://m.shnenglu.com/tianbianlan/archive/2009/07/24/91015.html'>闃呰鍏ㄦ枃</a><img src ="http://m.shnenglu.com/tianbianlan/aggbug/91015.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://m.shnenglu.com/tianbianlan/" target="_blank">澶╄竟钃?/a> 2009-07-24 11:48 <a href="http://m.shnenglu.com/tianbianlan/archive/2009/07/24/91015.html#Feedback" target="_blank" style="text-decoration:none;">鍙戣〃璇勮</a></div>]]></description></item><item><title>boost/checked_delete.hpphttp://m.shnenglu.com/tianbianlan/archive/2009/06/22/88272.html澶╄竟钃?/dc:creator>澶╄竟钃?/author>Mon, 22 Jun 2009 05:26:00 GMThttp://m.shnenglu.com/tianbianlan/archive/2009/06/22/88272.htmlhttp://m.shnenglu.com/tianbianlan/comments/88272.htmlhttp://m.shnenglu.com/tianbianlan/archive/2009/06/22/88272.html#Feedback0http://m.shnenglu.com/tianbianlan/comments/commentRss/88272.htmlhttp://m.shnenglu.com/tianbianlan/services/trackbacks/88272.html 

 1#ifndef BOOST_CHECKED_DELETE_HPP_INCLUDED
 2#define BOOST_CHECKED_DELETE_HPP_INCLUDED
 3
 4// MS compatible compilers support #pragma once
 5
 6#if defined(_MSC_VER) && (_MSC_VER >= 1020)
 7# pragma once
 8#endif
 9
10//
11//  boost/checked_delete.hpp
12//
13//  Copyright (c) 2002, 2003 Peter Dimov
14//  Copyright (c) 2003 Daniel Frey
15//  Copyright (c) 2003 Howard Hinnant
16//
17//  Distributed under the Boost Software License, Version 1.0. (See
18//  accompanying file LICENSE_1_0.txt or copy at
19//  http://www.boost.org/LICENSE_1_0.txt)
20//
21//  See http://www.boost.org/libs/utility/checked_delete.html for documentation.
22//
23
24namespace boost
25{
26
27// verify that types are complete for increased safety
28
29template<class T> inline void checked_delete(T * x)
30{
31    // intentionally complex - simplification causes regressions
32    typedef char type_must_be_complete[ sizeof(T)? 1-1 ];
33    (voidsizeof(type_must_be_complete);
34    delete x;
35}

36
37template<class T> inline void checked_array_delete(T * x)
38{
39    typedef char type_must_be_complete[ sizeof(T)? 1-1 ];
40    (voidsizeof(type_must_be_complete);
41    delete [] x;
42}

43
44template<class T> struct checked_deleter
45{
46    typedef void result_type;
47    typedef T * argument_type;
48
49    void operator()(T * x) const
50    {
51        // boost:: disables ADL
52        boost::checked_delete(x);
53    }

54}
;
55
56template<class T> struct checked_array_deleter
57{
58    typedef void result_type;
59    typedef T * argument_type;
60
61    void operator()(T * x) const
62    {
63        boost::checked_array_delete(x);
64    }

65}
;
66
67}
 // namespace boost
68
69#endif  // #ifndef BOOST_CHECKED_DELETE_HPP_INCLUDED


------------------------------------
source錛?a >http://www.boost.org/doc/libs/1_39_0/libs/utility/checked_delete.html

The header <boost/checked_delete.hpp> defines two function templates, checked_delete and checked_array_delete, and two class templates, checked_deleter and checked_array_deleter.

The C++ Standard allows, in 5.3.5/5, pointers to incomplete class types to be deleted with a delete-expression. When the class has a non-trivial destructor, or a class-specific operator delete, the behavior is undefined. Some compilers issue a warning when an incomplete type is deleted, but unfortunately, not all do, and programmers sometimes ignore or disable warnings.

A particularly troublesome case is when a smart pointer's destructor, such as boost::scoped_ptr<T>::~scoped_ptr, is instantiated with an incomplete type. This can often lead to silent, hard to track failures.

The supplied function and class templates can be used to prevent these problems, as they require a complete type, and cause a compilation error otherwise.

Synopsis

 1namespace boost
 2{
 3
 4template<class T> void checked_delete(T * p);
 5template<class T> void checked_array_delete(T * p);
 6template<class T> struct checked_deleter;
 7template<class T> struct checked_array_deleter;
 8
 9}

10
11checked_delete
12template<class T> void checked_delete(T * p);
13
14


Requires: T must be a complete type. The expression delete p must be well-formed.

Effects: delete p;

 

 1checked_array_delete
 2template<class T> void checked_array_delete(T * p);
 3Requires: T must be a complete type. The expression delete [] p must be well-formed. 
 4
 5Effects: delete [] p; 
 6
 7checked_deleter
 8template<class T> struct checked_deleter
 9{
10    typedef void result_type;
11    typedef T * argument_type;
12    void operator()(T * p) const;
13}
;
14
15void checked_deleter<T>::operator()(T * p) const;
16
17


Requires: T must be a complete type. The expression delete p must be well-formed.

Effects: delete p;

 

 1checked_array_deleter
 2template<class T> struct checked_array_deleter
 3{
 4    typedef void result_type;
 5    typedef T * argument_type;
 6    void operator()(T * p) const;
 7}
;
 8
 9void checked_array_deleter<T>::operator()(T * p) const;
10


Requires: T must be a complete type. The expression delete [] p must be well-formed.

Effects: delete [] p;

Acknowledgements
The function templates checked_delete and checked_array_delete were originally part of <boost/utility.hpp>, and the documentation acknowledged Beman Dawes, Dave Abrahams, Vladimir Prus, Rainer Deyke, John Maddock, and others as contributors.


Copyright © 2002 by Peter Dimov. Distributed under 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.



]]>
国产国产成人久久精品| 久久99国产精品久久久 | 爱做久久久久久| 日本高清无卡码一区二区久久| 欧美精品乱码99久久蜜桃| 久久人人爽人人爽人人AV东京热 | 91久久精品国产免费直播| 久久精品国产亚洲7777| 亚洲精品乱码久久久久久蜜桃不卡| 久久超碰97人人做人人爱| 天堂无码久久综合东京热| 精品久久久久久成人AV| 日韩欧美亚洲国产精品字幕久久久 | 奇米影视7777久久精品人人爽| 国产视频久久| 久久综合亚洲欧美成人| 中文精品99久久国产| 久久亚洲高清观看| 亚洲精品乱码久久久久久中文字幕 | 久久精品18| 中文字幕乱码久久午夜| 久久婷婷五月综合色99啪ak| avtt天堂网久久精品| 久久亚洲国产最新网站| 久久综合狠狠色综合伊人| 久久99精品久久久久婷婷| 国内精品久久久久久久久电影网 | 久久这里的只有是精品23| 精品久久久久久久中文字幕| 97超级碰碰碰久久久久| 嫩草伊人久久精品少妇AV| 18禁黄久久久AAA片| 久久久久女教师免费一区| 51久久夜色精品国产| 久久久久久综合一区中文字幕| 97久久精品无码一区二区| 国产午夜福利精品久久2021| 精品久久久噜噜噜久久久| 国产精品美女久久久久| 久久99国产精品久久久| 国产综合精品久久亚洲|