Могу ли я построить конструктор для инициализации структуры следующим образом:
mystruct struct1(a,b);
так же, как я инициализирую класс?
Или я должен использовать этот способ:
mystruct struct1=mystruct(a,b);
Вы можете использовать тот же синтаксис, что и для class.В C ++ нет никакой разницы между ними, за исключением спецификаторов доступа по умолчанию, которые public для struct и private для class.Смотрите подробное объяснение здесь: Разница между структурой и классом
class
public
struct
private
В C ++ нет разницы между структурой и классом, за исключением того, что элементы данных по умолчанию являются общедоступными в случае struct и частными в случае class.
Кроме того, есть два общихрежимы инициализации объектов в C ++
1) Прямая инициализация 2) Копирование инициализации
Оба способа действительны.Вы можете сделать это любым способом.