Normally, you wouldn't. They are in different Translation Units (TU)
To create an object of type test include the test.hpp file. The class has functions which can take arguments of different types, so for example if a class foo wanted to do something with a test object, then one of its functions would accept a test as a parameter.
This raises a whole lot of questions, I suggest you read up a bit.
You created t1 in main. ideally you want to have a separate file for each class including main. Then in your main file you will include all the other files (classes) and create the objects in main NOT in another file and try to bring it over. Hope this helps!