摘要:
在前一篇 "文章" ,我们提到,使用private来代替public以提高class的封装性。这一篇文章,我们将对接口发起攻势。首先来个简单的例子。 在上面的例子中,我们定义了一个网页浏览器的类,可以清楚cache,历史记录,以及cookies。然后我们有时希望这三个步骤可以一次性执行,所以定义了c 阅读全文
posted @ 2015-10-16 22:24
followDreamLgx
阅读(1437)
评论(0)
推荐(0)
摘要:
刚开始接触OOP的时候,打心底里我不喜欢private与protected。我声明一个public然后不直接用它,不就跟private一样吗?在某些场合下,我还能偷偷地用一下public变量,这不是更方便吗?所以,以前写的class,除了class几个字母外,其它的跟struct没啥区别。做了几个小... 阅读全文
posted @ 2015-10-16 20:56
followDreamLgx
阅读(231)
评论(0)
推荐(0)
摘要:
在上一篇博客中,我们介绍了简单地使用值传递带来的种种麻烦,相信有些朋友会一心一意将其斩草除根,但是当返回值也使用了引用的时候,麻烦就来了。
依然来个简答的例子 operator 的返回值是一个reference。记得那句话吗?“引用是另外一个变量的别名”,那么问题就来了,operator 返... 阅读全文
posted @ 2015-10-16 16:31
followDreamLgx
阅读(290)
评论(0)
推荐(0)
摘要:
第一个原因。。。 C++默认使用变量的方式传递对象。假如没有另外指定,函数的参数都是以实参的副本为初值,而函数的返回值也是一个复件。这些复件由对象的copy构造函数产出,这会让值传递成为昂贵的操作。来一个简单的例子 简单地看,Student的复制构造函数在传入参数的时候会被调用,产生pla... 阅读全文
posted @ 2015-10-16 15:46
followDreamLgx
阅读(661)
评论(3)
推荐(1)
摘要:
一个简答易错的例子 一年后使用这个接口的时候,写了 Date d(15,10,2015) 或者 Date d(2015,10,15) ,准确的应该是 Date d(10,15,2015) ,欧,多么低级的错误,花了我一个早上的时间去调试这个bug。 解决的方法 为参数声明自定义类型 这样子声明... 阅读全文
posted @ 2015-10-16 00:58
followDreamLgx
阅读(428)
评论(0)
推荐(0)

浙公网安备 33010602011771号