ragazzi sto programmando e ho problema riguardo i valori booleani vedete questa semplice funzione:

codice:
void full(int t, int dim){
   bool piena=false;
   if(t==dim){
      piena=true;
   }
   if(piena)
      cout<<"la pila e' piena\n";
   else
      cout<<"la pila non e' piena\n";
}
questa funzione o mi stampa sempre piena o sempre non piena come posso risolvere il problema?, grazie