<?xml version="1.0"?>
<?xml-stylesheet type="text/css" href="http://www.programmingexamples.net/w/skins/common/feed.css?303"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
		<id>http://www.programmingexamples.net/w/index.php?action=history&amp;feed=atom&amp;title=CPP%2FBoost%2FIterators%2FIndirectIterator</id>
		<title>CPP/Boost/Iterators/IndirectIterator - Revision history</title>
		<link rel="self" type="application/atom+xml" href="http://www.programmingexamples.net/w/index.php?action=history&amp;feed=atom&amp;title=CPP%2FBoost%2FIterators%2FIndirectIterator"/>
		<link rel="alternate" type="text/html" href="http://www.programmingexamples.net/w/index.php?title=CPP/Boost/Iterators/IndirectIterator&amp;action=history"/>
		<updated>2026-06-13T12:41:08Z</updated>
		<subtitle>Revision history for this page on the wiki</subtitle>
		<generator>MediaWiki 1.23.5</generator>

	<entry>
		<id>http://www.programmingexamples.net/w/index.php?title=CPP/Boost/Iterators/IndirectIterator&amp;diff=5132&amp;oldid=prev</id>
		<title>Daviddoria: Created page with '==IndirectIterator.cpp== &lt;source lang=&quot;cpp&quot;&gt; #include &lt;iostream&gt; #include &lt;set&gt;  #include &lt;boost/iterator/indirect_iterator.hpp&gt;  // Expose the itererator if the container stores…'</title>
		<link rel="alternate" type="text/html" href="http://www.programmingexamples.net/w/index.php?title=CPP/Boost/Iterators/IndirectIterator&amp;diff=5132&amp;oldid=prev"/>
				<updated>2012-01-02T16:17:43Z</updated>
		
		<summary type="html">&lt;p&gt;Created page with &amp;#039;==IndirectIterator.cpp== &amp;lt;source lang=&amp;quot;cpp&amp;quot;&amp;gt; #include &amp;lt;iostream&amp;gt; #include &amp;lt;set&amp;gt;  #include &amp;lt;boost/iterator/indirect_iterator.hpp&amp;gt;  // Expose the itererator if the container stores…&amp;#039;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;New page&lt;/b&gt;&lt;/p&gt;&lt;div&gt;==IndirectIterator.cpp==&lt;br /&gt;
&amp;lt;source lang=&amp;quot;cpp&amp;quot;&amp;gt;&lt;br /&gt;
#include &amp;lt;iostream&amp;gt;&lt;br /&gt;
#include &amp;lt;set&amp;gt;&lt;br /&gt;
&lt;br /&gt;
#include &amp;lt;boost/iterator/indirect_iterator.hpp&amp;gt;&lt;br /&gt;
&lt;br /&gt;
// Expose the itererator if the container stores objects.&lt;br /&gt;
// class MyCollection&lt;br /&gt;
// {&lt;br /&gt;
// public:&lt;br /&gt;
//   // Iterator interface&lt;br /&gt;
//   typedef std::set&amp;lt;int&amp;gt;::iterator iterator;&lt;br /&gt;
//   typedef std::set&amp;lt;int&amp;gt;::const_iterator const_iterator;&lt;br /&gt;
// &lt;br /&gt;
//   iterator begin() { return objects.begin(); }&lt;br /&gt;
// &lt;br /&gt;
//   iterator end() { return objects.end(); }&lt;br /&gt;
// &lt;br /&gt;
// private:&lt;br /&gt;
// &lt;br /&gt;
//   std::set&amp;lt;int&amp;gt; objects;&lt;br /&gt;
// };&lt;br /&gt;
&lt;br /&gt;
// Expose the itererator if the container stores pointers.&lt;br /&gt;
class MyCollection&lt;br /&gt;
{&lt;br /&gt;
public:&lt;br /&gt;
  MyCollection()&lt;br /&gt;
  {&lt;br /&gt;
    objects.insert(new int(3));&lt;br /&gt;
  }&lt;br /&gt;
  // Iterator interface&lt;br /&gt;
  //typedef boost::indirect_iterator&amp;lt;std::set&amp;lt;int&amp;gt; &amp;gt; iterator;&lt;br /&gt;
  typedef boost::indirect_iterator&amp;lt;std::set&amp;lt;int*&amp;gt;::iterator&amp;gt; iterator;&lt;br /&gt;
&lt;br /&gt;
  iterator begin() { return objects.begin(); }&lt;br /&gt;
&lt;br /&gt;
  iterator end() { return objects.end(); }&lt;br /&gt;
&lt;br /&gt;
private:&lt;br /&gt;
&lt;br /&gt;
  std::set&amp;lt;int*&amp;gt; objects;&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
int main()&lt;br /&gt;
{&lt;br /&gt;
  MyCollection myCollection;&lt;br /&gt;
&lt;br /&gt;
  for(MyCollection::iterator iterator = myCollection.begin(); iterator != myCollection.end(); iterator++)&lt;br /&gt;
  {&lt;br /&gt;
    std::cout &amp;lt;&amp;lt; &amp;quot; &amp;quot; &amp;lt;&amp;lt; *iterator;&lt;br /&gt;
  }&lt;br /&gt;
  return 0;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==CMakeLists.txt==&lt;br /&gt;
&amp;lt;source lang=&amp;quot;cmake&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
cmake_minimum_required(VERSION 2.6)&lt;br /&gt;
&lt;br /&gt;
Project(IndirectIterator)&lt;br /&gt;
&lt;br /&gt;
ADD_EXECUTABLE(IndirectIterator IndirectIterator.cpp)&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;/div&gt;</summary>
		<author><name>Daviddoria</name></author>	</entry>

	</feed>