You're trying to perform aggregate initialisation of a Participant
, where the first element is an unsigned int
. Naturally the one argument you give in that initialisation list is not a match for that initialisation.
I'd say this is a good example of why switching to C++11-style {}
initialisation absolutely everywhere for no reason whatsoever is error-prone.
What is wrong with:
Participant tempData = list->data;
or:
Participant tempData(list->data);