调用函数模板生成模板函数时参数不匹配

#include
#include
#include
using namespace std;
template
int find(T A[].int D, T key)
{
for (int i = 0; i < D; i++)
{
if (A[i] == key)
return i;
}
return -1;
}

int main()
{
int a[30];
int index;
int key = 65;
int n = 100;
srand(time(0));
for (int i = 0; i < 30; i++)
{
a[i] = rand() % n + 1;
cout << "a[" << i << "]=" << a[i] << '\t';

}
cout << endl;

index = find(a,30,key);
if (index>-1)
    cout << "在第" << index + 1 << "个元素的位置" << "查找到" << key << endl;
else
    cout << "数据没有查找到" << endl;

}

上面是代码,我定义了个find函数模板,调用时却报错!参数不匹配,不知道是什么问题
图片说明

把你的这一句int find(T A[].int D, T key)
改成int find(int A[],int D, int key)

int find(T A[].int D, T key),你把 点 "."替换为逗号 ,