摘要: 1,安装配置好Python本身的运行环境,以能在命令行下运行py脚本为准2,将Python的根目录下的include文件夹,添加到VS的项目属性->配置属性->C/C++->"附加包含目录"中3,将Python的根目录下的libs文件夹,添加到VS的项目属性->配置属性->链接器->"附加库目录"中... 阅读全文
posted @ 2014-07-10 19:09 铁甲小宝 阅读(1179) 评论(0) 推荐(0) 编辑
摘要: 这里,我定义了一个类,初始化函数,Show函数,并且定义了文档字符串,使用了help函数和__doc__来调用文档字符串>>> class FooClass(object): "This is my first class !" def __init__(self, name="NoName"): "This is a kinda construct funtion." self.name = name def show(self): "This is a print function." pri 阅读全文
posted @ 2014-04-05 16:45 铁甲小宝 阅读(232) 评论(0) 推荐(0) 编辑
摘要: Python可以用一行代码做很多事情,其中包括生成一个符合特定规则的列表,如下所示:下面的代码用到了:**运算符,for in关键词,range函数,if not关键词>>> aListOf2 = [2**x for x in range(10)]>>> aListOf2[1, 2, 4, 8, 16, 32, 64, 128, 256, 512]>>> aListOf2 = [2**x for x in range(10) if x > 5]>>> aListOf2[64, 128, 256, 512]>&g 阅读全文
posted @ 2014-04-05 16:10 铁甲小宝 阅读(200) 评论(0) 推荐(0) 编辑
摘要: Python中有两种注释方式,一种是前置#符号,另一种是直接使用字符串""或"""。后者称为文档字符串,除了带有常规注释的描述功能外,还可以通过help及生成文档的方法访问到,而常规注释无法访问。下面使用help和__doc__两种方法访问文档字符串,示例代码如下:>>> def foo(x): #this is a function for fun return x*3>>> foo("Hello ! ")'Hello ! Hello ! Hello ! '>> 阅读全文
posted @ 2014-04-05 14:24 铁甲小宝 阅读(360) 评论(0) 推荐(0) 编辑
摘要: 在for循环中,有三个常用的函数:range()产生一个下标序列,range(N)就是0到N-1的范围;len()得到列表或元组的长度;enumerate(),列举出列表或元组的下标及内容示例代码:>>> for i, c in enumerate(aList): print i,c 0 8881 22 33 44 55 66 77 8>>> for i in range(len(aList)): print i, aList[i] 0 8881 22 33 44 55 66 77 8>>> index = 0>>> fo 阅读全文
posted @ 2014-04-05 13:33 铁甲小宝 阅读(234) 评论(0) 推荐(0) 编辑
摘要: 今天开始学习Python。print函数几乎是学习每一个语言都首先用到的函数,Hello World还靠它呢~在Python里面,print有以下几个特点,区别于C/C++中的printf:(1)默认添加换行符,可以使用,取消换行符,例如:>>> def foo(): print "1" print "2" print "3" >>> foo()123>>> def foo(): print "1", print "2", print &qu 阅读全文
posted @ 2014-04-03 21:04 铁甲小宝 阅读(157) 评论(0) 推荐(0) 编辑
摘要: 享元模式: 在设计实现包含大量对象的数据结构时,考虑将对象划分为可共享的部分和不可共享的部分,其中可共享的部分共享存储,不可共享的部分单独存储,从而节约存储空间。核心实现: 共享重复的数据。 使用hash_table、set等集合,有效的管理 本质上是一种压缩,是一种处理大数据的方式。适用场景: 对象个数极多 对象之间的重复属性特别多 常用于富格式文本的存储举例说明: 一个地图中,有很多很多用于装饰的植物,如花朵、草丛、仙人掌等等,众多的植物每一个都是一个对象,每个植物对象都有颜色、高度、坐标、当前帧、动画贴图等等,其中动画贴图将占据大量的内存空间。如果不使用享元模式,将会由于... 阅读全文
posted @ 2013-11-04 21:10 铁甲小宝 阅读(235) 评论(1) 推荐(1) 编辑
摘要: 拷贝构造函数在下面三种情况下被调用:拷贝初始化,如:A b(a);赋值初始化:如:A b = a;函数传形参:如:foo(A a)赋值运算只有一种情况会被调用:非初始化的赋值:如:A b; b = a;代码: 1 #include 2 #include 3 4 /*** 5 * @author:zanzan101 6 */ 7 8 inline void P(const char* str) 9 {10 printf("%s\n", str);11 }12 13 class A14 {15 private: 16 int _data;17 char* _name... 阅读全文
posted @ 2013-11-04 14:35 铁甲小宝 阅读(150) 评论(0) 推荐(0) 编辑
摘要: 原型模式:属于创建型设计模式,直接复制一个已存在的实例作为新实例。背景补充: 创建型的设计模式,都属于工厂,内部实现产生实例的方法,对外开放一个获得实例的接口,将产生实例的方法与客户分离,降低耦合度。 使用原型模式,可以同时使用单例模式产生工厂实例,使用抽象工厂管理生产线,再使用原型模式返回对象。核心实现:实现拷贝构造函数。适用场景:实例非常复杂,设置非常麻烦,实例的初始化非常耗时;试图获得实例的客户并没有设置参数的能力,或者不想花费时间去设置参数。模型类图: 图 1 模型图举例说明:在本例中,同时使用了抽象工厂,单例模式和原型模式:工厂实例是通过单例模式创建的;客户需要的Tank实例是通过原 阅读全文
posted @ 2013-11-04 13:59 铁甲小宝 阅读(279) 评论(0) 推荐(1) 编辑
摘要: 桥接模式简介:将抽象部分和实现部分分离,抽象部分的变化无关实现,实现部分的变化也无需通知抽象部分。例如假设一个类有M中抽象子类,实现有N中实现方法,不使用桥接模式的复杂度为O(M×N),而使用桥接模式,对类进行抽象/实现层次划分,之后分别进行抽象类派生和实现方法派生,复杂度为O(M+N)。核心: 极类似于网络中层次的划分,应用层不需要考虑链路设计,上层协议调用下层协议,下层协议为上层协议服务。问题多维,可划分层次;应用层:抽象层;底层:实现层。难点:划分层次:抽象层和实现层,抽象层调用实现层,实现层可以独立设计区别:(个人认为使用顺序应该是:结构型设计模式->创建型设计模型-& 阅读全文
posted @ 2013-11-03 21:04 铁甲小宝 阅读(203) 评论(0) 推荐(0) 编辑