From af43904f38071b3d954a7d1748e3485da2aac143 Mon Sep 17 00:00:00 2001 From: Jeremy Siek Date: Sat, 17 Feb 2001 01:44:41 +0000 Subject: [PATCH] added "explicit" to iterator_adaptor constructor [SVN r9234] --- iterator_adaptors.htm | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/iterator_adaptors.htm b/iterator_adaptors.htm index 1393af4..899e240 100644 --- a/iterator_adaptors.htm +++ b/iterator_adaptors.htm @@ -339,11 +339,13 @@ struct default_iterator_policies -
iterator_adaptor(const Base&, const Policies& = + explicit iterator_adaptor(const Base&, const Policies& = Policies())

Construct an adapted iterator from a base object and a policies - object. + object. As this constructor is explicit, it does not + provide for implicit conversions from the Base type to + the iterator adaptor.
template <class B, class V, class R, class P>
@@ -619,12 +621,12 @@ struct iterator_adaptor typedef Policies policies_type; iterator_adaptor(); - iterator_adaptor(const Base&, const Policies& = Policies()); + explicit iterator_adaptor(const Base&, const Policies& = Policies()); base_type base() const; template <class B, class V, class R, class P> - iterator_adaptor ( + iterator_adaptor( const iterator_adaptor<B,Policies,V,R,P,Category,Distance>&); reference operator*() const;