템플릿 함수에서 템플릿 특수화된 멤버 함수를 호출할 경우, 다음과 같은 에러가 출력되는데 어떻게 수정할 수 있을까요?
```
lang=bash
/KMShare/src/main.cpp:22:16: error: use 'template' keyword to treat 'write' as a dependent template name
s->write<std::string>(input);
^
template
1 error generated.
```
다음과 같은 코드에서 발생합니다.
```
lang=c++
struct Server {
template<typename T>
void write(T const& buffer)
{
asio::async_write(_client, ...);
}
};
template<typename T>
void sender(T s)
{
std::string input = "test";
s->write<std::string>(input);
}
...
std::shared_ptr<Server> server;
server = std::make_shared<Server>(io_service, port);
sender<std::shared_ptr<Server> >(server);
```