Różnica jest taka:
int a = 1
a++ wykonauje pierw operacje/funkcje na a, a następnie inkrementuje a, czyli np. cout wyświetli 1, ale potem a będzie równe 2.
++a wykonuje najpierw inkrementacje, a następnie operacje/funkcje, czyli np. cout wyświetli 2, bo był 1 inkrementowane do 2, dalej w kodzie a tekaże będzie miało 2.