It is possible to write, but the compiler dont find the function when I want to use func(x):

```
template <class T>
double func(const double& x, const double& error = 0)
{...}
```

I have to write separately, like this why?

```
template <class T>
double func(const double& x, const double& error)
{...}
template <class T>
double func(const double& x)
{double error = 0; ...}
```