Set STD when cleared to a flight level.
Set QNH when cleared to an altitude.
Just for interests sake, some companies do this, some do not. The ones that do not ( my current company included) have changed their SOP's after one or more incidents where pilots get a change to their clearance and forget to reset their altimeters and level off at the wrong altitude/ flight level.
Eg, you're descending through FL 220 and ATC clears you to decend to 6000ft and you go ahead and change to the local QNH as per the above SOP, then ATC amends your clearance to FL 150 but you forget to change back to standard. You'll level off at 15000ft instead of FL 150. It happens often enough that operators change their SOP's.