reference, declarationdefinition
definition → references, declarations, derived classes, virtual overrides
reference to multiple definitions → definitions
unreferenced
    1
    2
    3
    4
    5
    6
    7
    8
    9
   10
   11
   12
   13
   14
   15
   16
   17
   18
   19
   20
   21
   22
   23
   24
   25
   26
   27
   28
   29
   30
   31
   32
   33
   34
   35
   36
   37
   38
   39
   40
   41
   42
   43
   44
   45
   46
   47
   48
   49
   50
   51
   52
   53
   54
   55
   56
   57
#include <string>

struct DeepData_5
{
    std::string m_some_text;
    DeepData_5() :
    m_some_text("Just a test") {}
};

struct DeepData_4
{
    DeepData_5 m_child1;
    DeepData_5 m_child2;
    DeepData_5 m_child3;
};

struct DeepData_3
{
    DeepData_4& m_child1;
    DeepData_4 m_child2;
    
    DeepData_3() : m_child1(* (new DeepData_4())), m_child2(DeepData_4()) {}
};

struct DeepData_2
{
    DeepData_3 m_child1;
    DeepData_3 m_child2;
    DeepData_3 m_child3;
    DeepData_3 m_child4;    
};

struct DeepData_1
{
    DeepData_2 *m_child1;
    
    DeepData_1() :
    m_child1(new DeepData_2())
    {}
};

/*
 type summary add -f "${var._M_dataplus._M_p}" std::string
 type summary add -f "Level 1" "DeepData_1"
 type summary add -f "Level 2" "DeepData_2" -e
 type summary add -f "Level 3" "DeepData_3"
 type summary add -f "Level 4" "DeepData_4"
 type summary add -f "Level 5" "DeepData_5"
 */

int main()
{
    DeepData_1 data1;
    DeepData_2 data2;
    
    return 0; // Set break point at this line.
}