Is anyway better to works with struct without default constructor?

 
struct TestStruct
{

  TestStruct(int i, int x);
  /* data */
  int item;
};

TestStruct::TestStruct(int i, int x)
{
  item = i;
}

class TestGround
{
private:
  
  TestStruct _struct;

public:
  TestGround();
  ~TestGround();
  void Call();
};

TestGround::TestGround() : _struct(0, 0)
{
  TestStruct t(100, 2);
  _struct = t;
}

TestGround::~TestGround()
{
}

void TestGround::Call()
{
  Print(_struct.item);
}

void OnStart()
{
  //---
  TestGround t;
  t.Call();
}


for the red part. is it possible to avoid instantiating the struct or it's mandatory?

for the yellow part. is it possible to write it in one line instead of two line?