net_assassin的专栏

知识改变命运,技术改变生活

短小精悍的线性筛法求素数

输入n,求n以内的所有素数算法用两个数组存储数据:一个是prime[],存储n以内所有的素数,其index为pi,初值为0一个是is_prime[i],表示自然数i(i

2014-11-20 14:18:26

阅读数 4215

评论数 1

N皇后问题

#include #include #include using namespace std; int search(int); int print(); int n,sum = 0; int f[1001],b[1001] = {0},c[2002] = {0},d[2...

2014-07-20 10:28:51

阅读数 4039

评论数 0

Effective C++ 读书笔记(七) 模板与泛型编程

7 模板与泛型编程 面向对象virtual         运行时多态     显示接口      重载、template和泛型   编译期多态      隐式接口 •    条款41:了解隐式接口和编译期多态                     Understand implicit i...

2013-08-30 15:14:07

阅读数 3868

评论数 0

Effective C++ 读书笔记(六) 继承与面向对象设计

条款32:确定你的pubilc继承塑模出is-a关系                                    Make sure public inheritance models “is-a” –  C++进行(OOP)面向对象编程,最重要的一个规则是:public inherit...

2013-08-30 13:48:54

阅读数 3827

评论数 0

Const 重载解析(const参数重载 和 const成员函数重载)

书上和网上在很多地方都对const 的重载做了一些解释,但感觉都不是很详细。还有很多同学在不同的地方发问关于const 重载的问题,这里我又重新看了一下,做了一个简单的分析也可能有不对的地方,欢迎讨论。 所谓重载,是指允许存在多个同名函数,而这些函数的参数表不同,即函数名相同但函数的签名不同。重...

2013-08-16 10:26:54

阅读数 5227

评论数 2

设计模式 连连看

2013-08-13 16:58:44

阅读数 553

评论数 0

Proxy 模式

作用: 为其他对象提供一种代理以控制对这个对象的访问 #include using namespace std; class Subject { public: Subject(){} virtual ~Subject(){} virtual void requ...

2013-08-13 16:07:28

阅读数 687

评论数 0

Effective C++ 读书笔记(五) 实现

5 实现           大多数情况下,适当提出拟的类定义以及函数声明,是花费最多心力的两件事。尽管如此,还是有很多东西需要小心:太快定义变量可能造成效率上的拖延;过度使用转型(casts)可能导致代码变慢又难维护,又招来微妙难解的错误;返回对象“内部数据之号码牌(handls)”可能会破坏...

2013-08-13 15:02:53

阅读数 690

评论数 0

Template Method 模式

Method模式 作用: 定义一个操作中的算法的骨架,而将一些步骤延迟到子类中。TemplateMetho d 使得子类可以不改变一个算法的结构即可重定义该算法的某些特定步骤。 UML结构图: 现在看具体例子  泡茶喝泡咖啡

2013-08-12 19:59:32

阅读数 629

评论数 0

Singleton模式

单线程singleton模式 #include using namespace std; template class Singleton { public: static T* getInstance() { if( !instance ) ...

2013-08-11 21:33:21

阅读数 547

评论数 0

Effective C++读书笔记(四) 设计与声明

4 设计与声明 •    软件设计,是“令软件做出你希望它做的事情”的步骤和做法,通常以颇为一般性的构想开始,最终演变成十足的细节,以允许特殊接口(interface)的开发,这些接口而后必须转换为C++声明式。 条款18:让接口容易被正确使用,不易被误用                Makei...

2013-08-09 19:32:33

阅读数 630

评论数 0

C++ 模板类型萃取技术 traits

自从C++中引入了template后,以泛型技术为中心的设计得到了长足的进步。STL就是这个阶段杰出的产物。STL的目标就是要把数据和算法分开,分别对其进行设计,之后通过一种名为iterator的东西,把这二者再粘接到一起。设计模式中,关于iterator的描述为:一种能够顺序访问容器中每个元素的...

2013-08-09 16:20:15

阅读数 2727

评论数 1

Effective C++读书笔记

Effective C++ 改善程序与设计的55个具体做法 让自己习惯C++ 条款01:视C++为一个语言联邦 条款02:尽量以const,enum,inline替换#define 条款03:尽可能使用const 条款04:确定对象被使用前已被初始化 构造、析构、赋值 条款05:了解C++默认编写...

2013-08-08 20:17:21

阅读数 648

评论数 0

Effective C++读书笔记(三) 资源管理

3 资源管理 所谓资源就是,一旦用了它,将来必须还给系统。C++程序中最常使用的资源就是动态分配内存(如果你分配内存却从来不曾归还它,会导致内存泄露),但内存只是你必须管理的众多资源之一。   条款13:以对象管理资源             Use object to manage resour...

2013-08-08 19:51:47

阅读数 769

评论数 0

public、protected、private继承

C++类继承关系问题     在C++中继承主要有三种关系:public、protected和private。这三种继承关系中public 继承是最为常用的一种继承关系,代表了接口继承含义,而他们分别具体代表了什么含义呢? 1. public    从语义角度上来说,public继承是一种接口继...

2013-08-08 15:24:17

阅读数 646

评论数 0

C++的名称查找顺序

1。符号查找(对于函数此时只看名字,不看参数)     大致顺序是     (1)如果有限定名( XXX:: )那么就直接在XXX里查找     (2)函数局部名字空间     (3)(如果是成员)类名字空间     (4)递归向上至所有基类的名字空间     (5)当前名字空间  ...

2013-08-06 21:34:31

阅读数 668

评论数 0

Effective C++读书笔记(二)构造、析构、赋值

•条款05:了解C++默默编写并调用哪些函数 •Know whatfunctions C++ silently writes and calls –C++会为默认的空类(emptyclass)添加 •Default 默认构造函数 •Copy 构造函数 •析构函数 •Copy assignment ...

2013-08-06 11:22:01

阅读数 678

评论数 0

设计模式——装饰者模式(Decorator)

装饰模式:动态地给一个对象添加一些额外的职责。就增加功能来说,装饰模式相比生成子类更为灵活。有时我们希望给某个对象而不是整个类添加一些功能。 类继承可能会带来类数量爆炸等问题,设计死板。 巴克莱咖啡,分店几乎开遍世界各地。他们发展的实在是太快了,所以他们此时正在急于实现一套由计算机管理的自动化记...

2013-08-05 21:49:39

阅读数 742

评论数 0

C++拾遗

因为C++实在是过于复杂了,时不时都会碰见一些晦涩的细节,因此特意发个帖子,留好位置,随时添加 Item 1    前置声明     当不需要class A的完整定义而只需要其名称时,可以通过前置声明函数来避免包含class A对应的头文件,这样可以减少编译依赖关系     ...

2013-08-04 19:50:45

阅读数 587

评论数 0

non-local static对象初始化

C++中的static对象是指存储区不属于stack和heap、"寿命"从被构造出来直至程序结束为止的对象。这些对象包括全局对象,定义于namespace作用域的对象,在class、function以及file作用域中被声明为static的对象。其中,函数内的static对象称...

2013-08-04 16:08:34

阅读数 773

评论数 0

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