惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

阮一峰的网络日志
阮一峰的网络日志
J
Java Code Geeks
Martin Fowler
Martin Fowler
宝玉的分享
宝玉的分享
V
Visual Studio Blog
OSCHINA 社区最新新闻
OSCHINA 社区最新新闻
M
MIT News - Artificial intelligence
U
Unit 42
博客园 - 三生石上(FineUI控件)
博客园 - 聂微东
The GitHub Blog
The GitHub Blog
I
InfoQ
WordPress大学
WordPress大学
H
Help Net Security
D
Docker
B
Blog
腾讯CDC
A
About on SuperTechFans
Recent Announcements
Recent Announcements
雷峰网
雷峰网
有赞技术团队
有赞技术团队
C
Check Point Blog
Y
Y Combinator Blog
Cyber Security Advisories - MS-ISAC
Cyber Security Advisories - MS-ISAC

博客园 - sunwaywei

被MM当成电脑白痴了 用Delphi编写的一个上网助手 Excel 2007的日期格式设置 使用C++绘制算法弥补.net图形绘制缺陷 使用UpdatePanel控件要注意的一个问题 Chuck Jazdzewski 对新手程序员的建议 打赢了一场效率仗 一个极有可能引发ExecutionEngineException的情况 竟然是灰鸽子? They're Back!!! Turbo系列产品的回归! 不小心染上了Bloodhound.NsAnti .net 2.0 的 Bug?--与 COM 交互时发生奇怪的 InvalidCastException 第三届虚拟现实峰会 忙碌的这几天 ASP.NET 2.0 中使用自定义缓存依赖 在 .net 2.0 中使用自定义事务操作 郁闷的端午节 奇怪的C++问题 CAD二次开发中遇到一个无法解决的问题
为了一个 const 折腾了半天
sunwaywei · 2006-05-23 · via 博客园 - sunwaywei

  这两天在忙着设计一个 Factory 算法,代码都写好了,却因为一个莫名其妙的 const 修饰符,折腾了好久,实是郁闷。

  这个 Factory 是一个属性工厂。使用的享元模式,同一个属性可以被许多对象共享。每一个对象向工厂请求属性的时候,工厂会看一下当前是否已经有相同的属性,有的话把它返回给对象供使用,没有的话创建一个。办法是很简单的,不料我在写这个函数的时候,鬼使神差地在函数末尾加上了 const 修饰符,终于导致了数个小时的白忙活。因为这个算法显然是要改动类数据的,加上 const 之后,向属性工厂中的 map 添加数据时自然通不过编译。可笑的是我竟然很长时间没发现这个低级错误,把一个算法翻来覆去地修改,无意中打开类声明,才发现居然误写了个 const,真是啼笑皆非。将之一去除,当即豁然贯通。

  编写代码就是怕遇上这类事故。不过总而言之,还是编码和排错的功力不够。嗯,需要重新审视一下自己了。