etc*_*mon 5 c++ networking type-conversion
我正在查看CPP-NETLIB的源代码,并且遇到了这种语法,它描述了这些概念.
template <class R> struct ClientRequest : network::Message<R> {
BOOST_CONCEPT_USAGE(ClientRequest) {
std::string tmp;
R request_(tmp);
swap(request, request_); // swappable via ADL
std::string host_ = host(request);
boost::uint16_t port_ = port(request);
std::string path_ = path(request);
std::string query_ = query(request);
std::string anchor_ = anchor(request);
std::string protocol_ = protocol(request);
request << uri(std::string());
network::http::uri(request, std::string());
(void) host_;
(void) port_;
(void) path_;
(void) query_;
(void) anchor_;
(void) protocol_;
}
private:
R request;
};
Run Code Online (Sandbox Code Playgroud)
我似乎无法找到任何解释,描述范围内类型的(无效)转换是如何必要的或它将做什么.为什么在结束BOOST_CONCEPT_USAGE成员函数之前需要清除堆栈?如果不清除堆栈还会怎么做?
| 归档时间: |
|
| 查看次数: |
228 次 |
| 最近记录: |