Is there any c++ class in vtk to write .pvd files?
No, pvd is ParaView specific.
If I have a model with an unstructured grid and different data for different steps, is it possible to write it in vtk files without repeat the unstructured grid each step?
vtkEnSightWriter supports that:
https://vtk.org/doc/nightly/html/classvtkEnSightWriter.html#a6c990ad3079855ce59450c52b7ce5952