{} можно использовать для прямой инициализации данных-членов в отсутствие конструктора.
() можно использовать только без каких-либо параметров при отсутствии конструктора, который принимает параметры.
В вашем случае они будут работать так же, потому что у вас есть определенный конструктор.
Быстрый пример:
struct h
{
int tmp=3;
int k=3;
};
int main()
{
h h1{6, 4};
h h2;
std::cout << h1.tmp << std::endl;
std::cout << h2.tmp << std::endl;
return 0;
}