自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

随.心.所.记

将程序写成一首感性的诗…… => www.realdodo.com

  • 博客(16)
  • 收藏
  • 关注

原创 C++中的property库的设计与实现过程(五)(第一部完)——为属性加入访问控制

前面已经讲最最基本的property框架构建了出来,现在还缺少的是访问控制的功能,也就是实现只读或者只写的property。说到这里,其实思路已经很清楚,既然要确定访问权限,那也就是限制property的访问者能够直接或间接调用的函数,最简单的作法当然就是通过模板特化来实现。例如,我们要先要实现read_write和read_only:namespace rdxLib ...{    te

2006-09-22 23:58:00 2742

原创 “GOOGLE和百度的变态竞争”简单调查

今天,在不少论坛上都看到这样一篇贴子:GOOGLE和百度的变态竞争GOOGLE的变态域名:www.mamashuojiusuannizhucedeyumingzaichanggoogledounengsousuochulai.cn/中文拼音:“妈妈说就算你注册的域名再长GOOGLE都能搜索出来“  然后百度也跟着注册了个:www.mamashuojiusuannizhucedeyumin

2006-09-15 15:44:00 2402 3

原创 C++中的property库的设计与实现过程(四)——消除讨厌的warning C4355

接下来应该是给property_bag写大量的操作符重载了……唔,稍微等等,怎么总是有一个warning消不掉呢?就是下面这个(使用VS 2005):warning C4355: this : used in base member initializer list 这个C4355是没有办法简单消除的,除非不用this,但又不可能,因为我property_bag的构造函数需要用到父类的

2006-09-14 21:59:00 4540 1

原创 C++中的property库的设计与实现过程(三)——将对象封装到property里面

有了get和set,那么将get和set 的具体内容(也就是那个用于返回真正值的对象)放在哪里比较好呢?一开始,我觉得学习其他语言的那种方式不错,即把property作为一个纯粹的接口来调用,所有的东西都定位到get和set函数中去。但是,为了实现默认的get或set,方便的从一个简单的公有变量向一个受管制的property转换,我觉得说不定把内容放到property里面是一个好主意(当然也不一定

2006-09-14 17:47:00 2129 1

转载 Dian团队项目宣讲会场次和时间安排

Dian团队的全称是“基于导师制的人才孵化站”。她以培养队员高尚的道德情操、优秀的工作作风和扎实的专业技能为目标,将导师制、科研团队以及工程实践相结合,通过“干中学”的方式,以科研课题为牵引,选拔优秀学生直接参与科研活动,加速提高队员的创新能力和综合素质,将高校人才培养与社会需求无缝对接,同时为高层次精英培养提供人才储备。团队不向队员收取任何费用。目前,Dian团队有10多个真实项目正在进行中,有

2006-09-13 14:29:00 2130

原创 C++中的property库的的使用方法

由于代码还没有整理,大量的特化和偏特化散乱在代码里,所以我就暂时不发布源码了,不过这是迟早的事情,呵呵。先来说说怎么用吧,个人觉得还是蛮有意思的。以下是可读写属性的声明方法:#include rdx/property.h>class TestProperty...{    typedef TestProperty MyType;public:    int set_X(int value)

2006-09-13 11:25:00 6075 3

原创 C++中的property库的设计与实现过程(二)——如何为属性指定get_和set_函数?

好了,现在就开始真正实现这个property库。我不打算一开始就把自己现有实现全盘托出,我希望记录整个设计的过程,这样,说不定在写这些文章的同时我还能找到进一步优化这个库的方法。首先来想想,这个类应该怎么定义才好。设想有这么一个类Sample,其中有一个属性X,那么代码可能要写成这样:class Sample...{    int x_;  // Is it necessary?publi

2006-09-13 10:33:00 2783 3

原创 C++中的property库的设计与实现过程(一)

虽然现在很忙,有很多事情要做,但是脑子里总在想一些稀奇古怪的事情而停不下来。比如说这个property,就是我最近睡觉前想的最多的东西。特别是前几天,不小心被关在实验室没法出去只好在这里睡觉,睡觉前又想到这个property,于是手痒,动手真的把粗糙的想法实现了一遍。在说如何实现之前,首先应该说说什么是property,以及为什么要做这么一个东西。property首先应该是Borland C++引

2006-09-12 23:22:00 3332 10

原创 在NTFS文件系统上修改文件的权限

这是一个雕虫小技了,不过今天发现了就记录一下,免得忘记,还是很有用的呢。实际上就是使用CACLS命令了,在命令行窗口里面获得帮助如下:显示或者修改文件的访问控制表(ACL)CACLS filename [/T] [/E] [/C] [/G user:perm] [/R user [...]]               [/P user:perm [...]] [/D user [...]] 

2006-09-12 22:26:00 2675

原创 再续:增强boost中function_traits的能力

关于这个问题,John Maddock老大在新闻组里面给出了很详细的解答,虽然我还有些问题要问,不过得好好组织一下怎么说才行……可不要浪费网络资源哈~主要意思是,对于成员函数traits而言,一方面有const和volatile的麻烦事情,另一方面又有一个隐含的this参数不好处理(究竟是算一个入口参数还是不算?),最重要的是这种应用需求完全可以用其他方式替代。所以,John认为没有必要实现这样的

2006-09-12 14:52:00 1919 1

原创 怒:使用IE写blog,居然会要求我装莫名其妙的插件

说实话,我可是第一次用IE上CSDN,主要是因为firefox恰巧出了点问题,就不得不用IE了。其他的一切还顺利,但是写blog时居然会提示我要安装一个ActiveX插件,真就不能忍了。首先,插件来路不明,居然连一个合法的证书都没有(流氓软件尚且都有证书,这个插件连证书都没有,sigh),虽然写着csdn.cab,但是我可没兴趣为了安装这个未经验证的东西而调整IE的安全级别。其次,写blog 的页

2006-09-12 01:44:00 1487 4

原创 续:增强boost中function_traits的能力

上一篇说过,在function_traits里面加入成员函数类型traits的工作纯粹是体力活,那么原作者没有理由“忽略”这个方面——毕竟他已经做了绝大多数的体力活,这个type_traits库就是大智慧和大工作量“完美结合”的产物。 那么,why not?就这个问题我专门写信给作者John Maddock,他的回答让我不太理解了:I dont think this is quite t

2006-09-12 01:30:00 1607

原创 增强boost中function_traits的能力

boost的type_traits功能相当强大,特别是function_traits,能够辅助做很多事情。但是美中不足,function_traits竟然没有针对成员函数做任何的traits提取,似乎有些缺憾。我在boost 1.33基础上修改了boost/type_traits/function_traits.hpp的内容,增强其中的功能,希望能够暂时弥补一下这个遗憾。以下就直接贴代码了,在Be

2006-09-09 23:31:00 2607

原创 获得全局函数和成员函数指针的部分traits的方法

全局函数和成员函数指针不是类型,而是一种变量,虽然它们在本质上有很多区别,但是从模板的角度来说,却是非常类似的。那么如何尽可能的获取它们的traits呢?就这个问题,我做了一些简单的研究,所有的编译结果基于VS.net 2005。 首先,我们不可能用类模板来提取traits信息,也就是说,这种traits手法和一般的type_traits不一样,也弱很多。这个的原因是,类模板如果要接受数值

2006-09-09 11:28:00 1369

原创 Windows 的窗口大小限制

今天想把一个窗口的大小改变成大于屏幕宽度和高度的样子,不过发现居然不行!而且无论是什么程序,都不能够做到这一点!嗯,这个特性似乎不是那么爽哦! 

2006-09-09 11:26:00 2489 3

原创 Words could not be used in C++

C++ Keywords asm        do           if               return       try auto       double       inline           short        typedef bool       dynamic_cast int              signed       typeid

2006-09-09 11:23:00 1251

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除