Uma classe C ++ pode determinar se está na pilha ou no heap?

eu tenho

class Foo {
....
}

Existe uma maneira de Foo ser capaz de separar:

function blah() {
  Foo foo; // on the stack
}

e

function blah() {
  Foo foo* = new Foo(); // on the heap
}

Eu quero que Foo seja capaz de fazer coisas diferentes dependendo se está alocado na pilha ou na pilha.

Editar:

Muitas pessoas me perguntaram "por que isso?"

A resposta:

Estou usando um GC ref contado agora. No entanto, quero ter a capacidade de executar a marcação e varredura também. Para isso, preciso marcar um conjunto de ponteiros "raiz" - esses são os ponteiros na pilha. Assim, para cada classe, gostaria de saber se estão na pilha ou no heap.

questionAnswers(15)

yourAnswerToTheQuestion