﻿<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:trackback="http://madskills.com/public/xml/rss/module/trackback/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/"><channel><title>C++博客-kkk</title><link>http://www.cppblog.com/kkk/</link><description>Thinking or dying</description><language>zh-cn</language><lastBuildDate>Sat, 04 Apr 2026 21:18:06 GMT</lastBuildDate><pubDate>Sat, 04 Apr 2026 21:18:06 GMT</pubDate><ttl>60</ttl><item><title>12345c69b2f210</title><link>http://www.cppblog.com/kkk/archive/2010/07/29/121538.html</link><dc:creator>kkk</dc:creator><author>kkk</author><pubDate>Thu, 29 Jul 2010 02:10:00 GMT</pubDate><guid>http://www.cppblog.com/kkk/archive/2010/07/29/121538.html</guid><wfw:comment>http://www.cppblog.com/kkk/comments/121538.html</wfw:comment><comments>http://www.cppblog.com/kkk/archive/2010/07/29/121538.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cppblog.com/kkk/comments/commentRss/121538.html</wfw:commentRss><trackback:ping>http://www.cppblog.com/kkk/services/trackbacks/121538.html</trackback:ping><description><![CDATA[<p>nothing</p>
<img src ="http://www.cppblog.com/kkk/aggbug/121538.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cppblog.com/kkk/" target="_blank">kkk</a> 2010-07-29 10:10 <a href="http://www.cppblog.com/kkk/archive/2010/07/29/121538.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>写后台服务的一些准则</title><link>http://www.cppblog.com/kkk/archive/2010/05/31/116837.html</link><dc:creator>kkk</dc:creator><author>kkk</author><pubDate>Mon, 31 May 2010 12:48:00 GMT</pubDate><guid>http://www.cppblog.com/kkk/archive/2010/05/31/116837.html</guid><wfw:comment>http://www.cppblog.com/kkk/comments/116837.html</wfw:comment><comments>http://www.cppblog.com/kkk/archive/2010/05/31/116837.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cppblog.com/kkk/comments/commentRss/116837.html</wfw:commentRss><trackback:ping>http://www.cppblog.com/kkk/services/trackbacks/116837.html</trackback:ping><description><![CDATA[&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 1，错误情况一定要处理，要么写错误日志，要么返回给前台，一定要记录关键信息以便定位问题<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 2，正常操作如果要记流水的话，与错误日志分开，两者用途不同<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 3，在效率与模块清晰性之间，优先考虑模块清晰性，简单的结构更容易优化<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 4，通讯协议尽量简洁，简洁意味着高效，同时必须考虑扩展性，可以设计变长头部/可选头，版本等，<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 5，在不牺牲简洁性和效率的情况下，尽量考虑用配置驱动行为<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 6，尽量支持可探查性，通过外部工具能实时了解服务器内部状态，可考虑支持修改内部状态<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;7，系统分层不宜过少，过少内聚不够，结构比较散，也容易潜藏bug，也不宜过多，过多效率下降，出错可能性也会增加<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 8，内存尽量预分配，可简化逻辑，减少bug，并提高效率<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 9，查询+操作的方式尽量换成操作+返回错误的方式，如果大部分情况下操作会成功的话<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 10，可适当考虑协议转换层，将通讯数据包转换成结构体或反之，优点是功能分层，将通讯和逻辑处理的数据表示分离，结构更清晰<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 缺点是多了一层，可能会多一些代码（通讯数据包与结构体互转），而且部分字段的转换中某些情况下可能不需要
<img src ="http://www.cppblog.com/kkk/aggbug/116837.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cppblog.com/kkk/" target="_blank">kkk</a> 2010-05-31 20:48 <a href="http://www.cppblog.com/kkk/archive/2010/05/31/116837.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>type decay</title><link>http://www.cppblog.com/kkk/archive/2007/03/22/20345.html</link><dc:creator>kkk</dc:creator><author>kkk</author><pubDate>Thu, 22 Mar 2007 03:09:00 GMT</pubDate><guid>http://www.cppblog.com/kkk/archive/2007/03/22/20345.html</guid><wfw:comment>http://www.cppblog.com/kkk/comments/20345.html</wfw:comment><comments>http://www.cppblog.com/kkk/archive/2007/03/22/20345.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cppblog.com/kkk/comments/commentRss/20345.html</wfw:commentRss><trackback:ping>http://www.cppblog.com/kkk/services/trackbacks/20345.html</trackback:ping><description><![CDATA[
		<p align="left">    默认情况下，函数的参数类型如果是数组或函数会decay为指向数组元素类型的指针或指向函数的指针，但如果形参是数组或函数的引用类型，则实参的类型不会发生decay。</p>
<img src ="http://www.cppblog.com/kkk/aggbug/20345.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cppblog.com/kkk/" target="_blank">kkk</a> 2007-03-22 11:09 <a href="http://www.cppblog.com/kkk/archive/2007/03/22/20345.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>函数类型与指向函数的指针类型</title><link>http://www.cppblog.com/kkk/archive/2007/03/22/20341.html</link><dc:creator>kkk</dc:creator><author>kkk</author><pubDate>Thu, 22 Mar 2007 02:42:00 GMT</pubDate><guid>http://www.cppblog.com/kkk/archive/2007/03/22/20341.html</guid><wfw:comment>http://www.cppblog.com/kkk/comments/20341.html</wfw:comment><comments>http://www.cppblog.com/kkk/archive/2007/03/22/20341.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cppblog.com/kkk/comments/commentRss/20341.html</wfw:commentRss><trackback:ping>http://www.cppblog.com/kkk/services/trackbacks/20341.html</trackback:ping><description><![CDATA[
		<div style="BORDER-RIGHT: #cccccc 1px solid; PADDING-RIGHT: 5px; BORDER-TOP: #cccccc 1px solid; PADDING-LEFT: 4px; FONT-SIZE: 13px; PADDING-BOTTOM: 4px; BORDER-LEFT: #cccccc 1px solid; WIDTH: 98%; WORD-BREAK: break-all; PADDING-TOP: 4px; BORDER-BOTTOM: #cccccc 1px solid; BACKGROUND-COLOR: #eeeeee">
				<img src="http://www.cppblog.com/images/OutliningIndicators/None.gif" align="top" />
				<span style="COLOR: #000000">typedef void FUN();<br /><img src="http://www.cppblog.com/images/OutliningIndicators/None.gif" align="top" />typedef void (</span>
				<span style="COLOR: #000000">*</span>
				<span style="COLOR: #000000">PFUN)();</span>
		</div>FUN是函数类型，不能定义此类型的数组（另外两种是void和引用），但PFUN是指针类型<img src ="http://www.cppblog.com/kkk/aggbug/20341.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cppblog.com/kkk/" target="_blank">kkk</a> 2007-03-22 10:42 <a href="http://www.cppblog.com/kkk/archive/2007/03/22/20341.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item></channel></rss>