cout<<palinSum(number, &sumNum)<<" "<<sumNum<<endl;
Pisząc taką linijkę zakładamy, że cout wykonuje operacje od lewej do prawej. Czyli najpierw wywołana zostanie metoda palinSum, a potem zostanie pobrana wartość z obliczonego już sumNum. A tak być nie musi.
Może się zdarzyć, że najpierw wypiszemy zero, a dopiero potem odpalimy funkcję palinSum.
Poprawka @bieniek_k zadziałała, bo najpierw obliczył wynik, a dopiero potem pobrał wartość.