What is the best way to subtract a single entry or a histogram of entries from another histogram?

TH1F *h = new TH1F("h","h",500,-,1,1);
h->FillRandom("gaus");
for(int i=0 ; i<h->GetNbins() ; ++i) {
h->SetBinContent(i,h->GetBinContent(i)-1);
}