C ++ - Verifique se o ponteiro está apontando para a memória válida (não é possível usar verificações NULL aqui)

Eu estou criando linguagem de script. Quando eu aloco coisa, é alocar a coisa e retorna o endereço e então eu faço qualquer coisa com ele e então apago isto. Eu não posso controlar as variáveis ​​como criar struct em meu idioma (Struct com ponteiro e bool para verificar se o ponteiro está apontando para dados válidos) e etc porque isso fará com que meu idioma fique mais lento e maior na RAM.

Por exemplo: (Minha linguagem de script é fácil de entender. Duvido que você não entenda isso, mas colocarei alguns comentários de qualquer maneira)

MyStruct = { //Function. For create object with it use 'new' before it.
    TestAliveVar=0
}
Func = { //I'll explain what exactly this function does every place it runs.
    if (!exists(arg0)) //C++: ???
        exit;
    arg0.TestAliveVar=1
    println "Still alive!";
}
var MyVar=new MyStruct(); //Returns address of the new object in the heap
                          //and runs on it the `MyStruct` function.
Func(MyVar);              //Sets his 'TestAliveVar' to 1
                          //and prints 'Still Alive!' with new line
delete(MyVar);            //C++: free(MyVar);
Func(MyVar);              //Does nothing

A questão é como criar a funçãoexists você viu neste código. BTW eu posso executar códigos C ++ neste idioma.

questionAnswers(6)

yourAnswerToTheQuestion