中秋快乐的C语言编码,中秋节快乐

#include#include#include#include#include#include#includeusingasio::ip::tcp;

std::stringmake_daytime_string()

{usingnamespacestd;//For time_t, time and ctime;time_t now=time(0);returnctime(&now);

}classtcp_connection

:publicboost::enable_shared_from_this{public:

typedef boost::shared_ptrpointer;staticpointer create(asio::io_service&io_service)

{returnpointer(newtcp_connection(io_service));

}

tcp::socket&socket()

{returnsocket_;

}voidstart()

{

message_=make_daytime_string();

asio::async_write(socket_, asio::buffer(message_),

boost::bind(&tcp_connection::handle_write, shared_from_this(),

asio::placeholders::error,

asio::placeholders::bytes_transferred));

}private:

tcp_connection(asio::io_service&io_service)

: socket_(io_service)

{

}voidhandle_write(constasio::error&/*error*/,

size_t/*bytes_transferred*/)

{

}

tcp::socket socket_;

std::stringmessage_;

};classtcp_server

{public:

tcp_server(asio::io_service&io_service)

: acceptor_(io_service, tcp::endpoint(tcp::v4(),13))

{

start_accept();

}private:voidstart_accept()

{

tcp_connection::pointer new_connection=tcp_connection::create(acceptor_.io_service());

acceptor_.async_accept(new_connection->socket(),

boost::bind(&tcp_server::handle_accept,this, new_connection,

asio::placeholders::error));

}voidhandle_accept(tcp_connection::pointer new_connection,constasio::error&error)

{if(!error)

{

new_connection->start();

start_accept();

}

}

tcp::acceptor acceptor_;

};intmain()

{try{

asio::io_service io_service;

tcp_server server(io_service);

io_service.run();

}catch(std::exception&e)

{

std::cerr<

}return0;

}

  • 2
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值