fixed the range based example
better examples
diff --git a/examples/subcases_and_bdd/CMakeLists.txt b/examples/subcases_and_bdd/CMakeLists.txt
new file mode 100644
index 0000000..5ce5ce1
--- /dev/null
+++ b/examples/subcases_and_bdd/CMakeLists.txt
@@ -0,0 +1,12 @@
+cmake_minimum_required(VERSION 2.8)

+

+get_filename_component(PROJECT_NAME ${CMAKE_CURRENT_SOURCE_DIR} NAME)

+project(${PROJECT_NAME})

+

+include(../../scripts/common.cmake)

+

+include_directories("../../doctest/")

+

+add_executable(${PROJECT_NAME} main.cpp)

+

+add_test(NAME ${PROJECT_NAME} COMMAND $<TARGET_FILE:${PROJECT_NAME}>)

diff --git a/examples/subcases_and_bdd/main.cpp b/examples/subcases_and_bdd/main.cpp
new file mode 100644
index 0000000..1cf4b3b
--- /dev/null
+++ b/examples/subcases_and_bdd/main.cpp
@@ -0,0 +1,70 @@
+#define DOCTEST_CONFIG_IMPLEMENT_WITH_MAIN

+#include "doctest.h"

+

+#include <iostream>

+#include <vector>

+using namespace std;

+

+TEST_CASE("lots of nested subcases") {

+    cout << endl << "root" << endl;

+    SUBCASE("") {

+        cout << "1" << endl;

+        SUBCASE("") { cout << "1.1" << endl; }

+    }

+    SUBCASE("") {   

+        cout << "2" << endl;

+        SUBCASE("") { cout << "2.1" << endl; }

+        SUBCASE("") {

+            cout << "2.2" << endl;

+            SUBCASE("") {

+                cout << "2.2.1" << endl;

+                SUBCASE("") { cout << "2.2.1.1" << endl; }

+                SUBCASE("") { cout << "2.2.1.2" << endl; }

+            }

+        }

+        SUBCASE("") { cout << "2.3" << endl; }

+        SUBCASE("") { cout << "2.4" << endl; }

+    }

+}

+

+SCENARIO("vectors can be sized and resized") {

+    GIVEN("A vector with some items") {

+        std::vector<int> v(5);

+

+        REQUIRE(v.size() == 5u);

+        REQUIRE(v.capacity() >= 5u);

+

+        WHEN("the size is increased") {

+            v.resize(10u);

+

+            THEN("the size and capacity change") {

+                CHECK(v.size() == 20u);

+                CHECK(v.capacity() >= 10u);

+            }

+        }

+        WHEN("the size is reduced") {

+            v.resize(0);

+

+            THEN("the size changes but not capacity") {

+                CHECK(v.size() == 0u);

+                CHECK(v.capacity() >= 5u);

+            }

+        }

+        WHEN("more capacity is reserved") {

+            v.reserve(10);

+

+            THEN("the capacity changes but not the size") {

+                CHECK(v.size() == 5u);

+                CHECK(v.capacity() >= 10u);

+            }

+        }

+        WHEN("less capacity is reserved") {

+            v.reserve(0);

+

+            THEN("neither size nor capacity are changed") {

+                CHECK(v.size() == 10u);

+                CHECK(v.capacity() >= 5u);

+            }

+        }

+    }

+}
\ No newline at end of file