I'm parsing a file format with a header.
(Note: I don't write any files, I only read and parse)

Because it won't be changed, its header can be passed by value.
So I would guess a struct would be the best choice but I'm not sure because I almost never use them.

Is there any reason why I should (not) make it a class or a struct?

Edit: It's hard to provide an example at the moment.
You can compare it to any basic file header.
It includes the signature ('magic number'), the version and the 'sub-type'.