锘??xml version="1.0" encoding="utf-8" standalone="yes"?>国产99久久精品一区二区,亚洲国产精品嫩草影院久久,久久久久久国产精品美女http://www.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://www.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://www.shnenglu.com/tianbianlan/archive/2009/07/24/91015.html</guid><wfw:comment>http://www.shnenglu.com/tianbianlan/comments/91015.html</wfw:comment><comments>http://www.shnenglu.com/tianbianlan/archive/2009/07/24/91015.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.shnenglu.com/tianbianlan/comments/commentRss/91015.html</wfw:commentRss><trackback:ping>http://www.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://www.shnenglu.com/tianbianlan/archive/2009/07/24/91015.html'>闃呰鍏ㄦ枃</a><img src ="http://www.shnenglu.com/tianbianlan/aggbug/91015.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.shnenglu.com/tianbianlan/" target="_blank">澶╄竟钃?/a> 2009-07-24 11:48 <a href="http://www.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://www.shnenglu.com/tianbianlan/archive/2009/06/22/88272.html澶╄竟钃?/dc:creator>澶╄竟钃?/author>Mon, 22 Jun 2009 05:26:00 GMThttp://www.shnenglu.com/tianbianlan/archive/2009/06/22/88272.htmlhttp://www.shnenglu.com/tianbianlan/comments/88272.htmlhttp://www.shnenglu.com/tianbianlan/archive/2009/06/22/88272.html#Feedback0http://www.shnenglu.com/tianbianlan/comments/commentRss/88272.htmlhttp://www.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.



]]>
久久久久久久久无码精品亚洲日韩 | 欧美亚洲国产精品久久| 精品国产乱码久久久久久浪潮| 91精品婷婷国产综合久久| 国内精品久久久久久久久电影网| 欧美激情精品久久久久久| 亚洲精品乱码久久久久久按摩| 国产精品一久久香蕉产线看| 日本国产精品久久| 久久亚洲春色中文字幕久久久| 国产福利电影一区二区三区久久久久成人精品综合 | 久久国产精品国语对白| 久久无码中文字幕东京热| 99久久精品影院老鸭窝| 伊人久久大香线蕉精品不卡| 91精品国产91久久综合| 99久久国产亚洲综合精品| 久久精品国产91久久麻豆自制| 亚洲国产视频久久| 久久夜色tv网站| 亚洲午夜久久久久久久久电影网 | 一本大道久久东京热无码AV| 99热成人精品热久久669| 午夜精品久久久久| 狠狠久久综合伊人不卡| 99久久无色码中文字幕| 久久婷婷五月综合色奶水99啪| 欧美成a人片免费看久久| 国产福利电影一区二区三区久久久久成人精品综合 | 伊人久久综合热线大杳蕉下载| 久久AV高潮AV无码AV| 日本精品一区二区久久久| 一本大道加勒比久久综合| 99久久超碰中文字幕伊人| 五月丁香综合激情六月久久| 国产成人精品综合久久久| 日本WV一本一道久久香蕉| 久久无码AV中文出轨人妻| 蜜桃麻豆WWW久久囤产精品| 久久伊人色| 亚洲午夜福利精品久久|