Allocate on the stack, or call delete to fix memory leak

This commit is contained in:
Andreas Fabri 2013-11-10 10:00:10 +01:00
parent bf5f124a97
commit a5c84cf13d
2 changed files with 6 additions and 5 deletions

View File

@ -32,14 +32,14 @@ int main()
last = InputList.end();
std::cerr << InputList.size();
Range_tree_2_type *Range_tree_2 = new Range_tree_2_type(first,last);
Range_tree_2_type Range_tree_2(first,last);
Key a=Key(4,8.1);
Key b=Key(5,8.2);
Interval win=Interval(a,b);
std::cerr << "\n Window Query: \n";
Range_tree_2->window_query(win, std::back_inserter(OutputList));
Range_tree_2.window_query(win, std::back_inserter(OutputList));
current=OutputList.begin();
while(current!=OutputList.end())
@ -48,7 +48,7 @@ int main()
current++;
}
if(Range_tree_2->range_tree_2->is_valid())
if(Range_tree_2.range_tree_2->is_valid())
std::cerr << "Tree is valid\n";
else
std::cerr << "Tree is not valid\n";

View File

@ -26,10 +26,11 @@ class Interval_traits{
typedef Tree_anchor<Data,Window> Tree_Anchor;
typedef Segment_tree_d<Data,Window,Interval_traits> Segment_Tree_d;
void remove_warning(Segment_Tree_d*){}
int main(){
Tree_Anchor *anchor = new Tree_Anchor;
Segment_Tree_d *segment_tree = new Segment_Tree_d(*anchor);
remove_warning(segment_tree);
delete anchor;
delete segment_tree;
return 0;
}