Ticket #9293: test.cpp

File test.cpp, 799 bytes (added by anonymous, 9 years ago)

use case demonstration

Line 
1#include <iostream>
2#include <list>
3#include <cstdlib>
4#include <boost/multi_index_container.hpp>
5#include <boost/multi_index/sequenced_index.hpp>
6
7using namespace std;
8using namespace boost;
9using namespace boost::multi_index;
10
11class A;
12class B;
13class A {
14public:
15#ifdef USE_LIST
16 list<B>::iterator b_it;
17#else
18 multi_index_container<B,indexed_by<sequenced<>>>::iterator b_it;
19#endif
20 int val;
21};
22class B {
23public:
24 list<A>::iterator a_it;
25 int val;
26};
27
28int main()
29{
30 list<A> la;
31#ifdef USE_LIST
32 list<B> lb;
33#else
34 multi_index_container<B,indexed_by<sequenced<>>> lb;
35#endif
36 A a;
37 a.val = 5;
38 B b;
39 b.val = 7;
40 la.push_front(a);
41 lb.push_front(b);
42 a = la.front();
43 a.b_it = lb.begin();
44 cout << a.b_it->val << "\n";
45
46 return EXIT_SUCCESS;
47}