C++数据结构的类模板

类中编写了一个复制构造函数,
class T{…T(const T& t}}。

后面调用这个类,
void fun(T t){};
int main()
{

T t;
fun(t);

}

后面的两个T t是什么意思,作用是什么?
对函数fun()的调用,括号里面的c是什么意思

T t 是创建了t 对象,这个对象具有T类的属性和方法。func(T t)函数是传入t对象,是形参,这里可能是想调用构造函数,无参,有参,拷贝构造函数等