Path: csiph.com!usenet.pasdenom.info!news.albasani.net!.POSTED!not-for-mail From: Bo Persson Newsgroups: comp.std.c++ Subject: Smart pointer comparison - why a difference? Date: Mon, 28 May 2012 14:53:04 -0700 (PDT) Organization: unknown Lines: 26 Sender: std-cpp-request@vandevoorde.com Approved: stephen.clamage@oracle.com Message-ID: NNTP-Posting-Host: gQPhHN0q0uDq6zeG6rF4GY3b/56H3LhnuCA/HWZ6j4U= Content-Type: text/plain; charset=ISO-8859-1; format=flowed X-Trace: news.albasani.net eIaqqGz2pR8SDaGbHdJEQjYW8TdwHq30IDMr/isJkJVDgPQfdHDd0fVie1PD7xhGE1o1hkVcwDWSLblK9lky9w== X-Complaints-To: abuse@albasani.net NNTP-Posting-Date: Mon, 28 May 2012 21:53:05 +0000 (UTC) X-Mailer: Perl5 Mail::Internet v2.05 X-Submission-Address: std-cpp-submit@vandevoorde.com Cancel-Lock: sha1:yRGsr0deznjYTFfMxx2QxENT7Oo= X-Original-Date: Mon, 28 May 2012 22:40:23 +0200 Xref: csiph.com comp.std.c++:520 In C++11, operator< for unique_ptr [unique.ptr.special] is defined as std::less()(x.get(), y.get()) where CT is the common_type of the unique_ptr's internal pointer typedefs. On the other hand, operator< for shared_ptr [util.smartptr.shared.cmp] is defined as std::less()(a.get(), b.get()) "where V is the composite pointer type (5.9) of T* and U*." What exactly is the difference, and why? Bo Persson -- [ comp.std.c++ is moderated. To submit articles, try posting with your ] [ newsreader. If that fails, use mailto:std-cpp-submit@vandevoorde.com ] [ --- Please see the FAQ before posting. --- ] [ FAQ: http://www.comeaucomputing.com/csc/faq.html ]