What's the best way to resolve this scope problem?

Posted by Peter Stewart on Stack Overflow See other posts from Stack Overflow or by Peter Stewart
Published on 2010-05-02T13:54:53Z Indexed on 2010/05/02 13:57 UTC
Read the original article Hit count: 248

Filed under:
|

I'm writing a program in python that uses genetic techniques to optimize expressions.

Constructing and evaluating the expression tree is the time consumer as it can happen

billions of times per run. So I thought I'd learn enough c++ to write it and then incorporate it

in python using cython or ctypes.

I've done some searching on stackoverflow and learned a lot.

This code compiles, but leaves the pointers dangling.

I tried 'this_node = new Node(...' . It didn't seem to work. And I'm not at all sure how I'd

delete all the references as there would be hundreds.

I'd like to use variables that stay in scope, but maybe that's not the c++ way.

What is the c++ way?

    class Node
    {
    public:
        char *cargo;
        int depth;
        Node *left;
        Node *right;
    }


  Node make_tree(int depth)
    {
        depth--;   
        if(depth <= 0)
        {
            Node tthis_node("value",depth,NULL,NULL);
            return tthis_node;
        }
        else
        {
            Node this_node("operator" depth, &make_tree(depth), &make_tree(depth));
            return this_node;
        }

    };

© Stack Overflow or respective owner

Related posts about c++

Related posts about scope