一、慎重选择容器类型1、容器分类标准STL序列容器:vector,string,deque,list;标准STL关联容器:set,multiset,map,multimap;非标准关联容器(基于散列表):hash_set,hash_multiset,hash_map,hash_multimap;几种标准的非STL容器:数组、bitset、stack、queue、priority_queue
原创
2023-10-10 09:52:17
116阅读
一、确保目标区间足够大 STL容器在被添加时(通过insert、push_front、push_back等)自动扩展它们自己来 x
原创
2023-10-10 09:53:44
145阅读
并发本身有两个概念:1.互斥性;2.可见性; 先来说一下可见性,就是让共享的变量在进程间可以及时获得最新版本的数据;这里比较简单的方式是为可能被并发修改的全局变量添加上volatile关键字;volatile关键作用根据我查找的用途,有两方面: 在c++中,它的寓意是通知编译器对于该字段处理取消优化,强制每次都是内存中取值;优化的概念是编译器有的时候会自作聪明的把一些变量的复制过程简化,比如如果对...
转载
2015-03-08 23:00:00
76阅读
2评论
标准STL容器提供了四种不同的迭代器:iterator、const_iterator、reverse_iterator和const_reverse_iterator。一、尽量用iterator,reverse_iterator和const_reverse_iterator 每个标准容器类都提供四种迭代器类型。对于container而言,iterator的作用相当于T
原创
2023-10-10 09:53:24
84阅读
一、理解相等和等价的区别 在STL中有很多函数,它们需要确定两个值是否相同,但是这些函数判断的方式有多不同。例如find函数和set::inser
原创
2023-10-10 09:53:38
164阅读
一、vector和string优于动态分配的数组 当你决定用new动态分配内存时,这意味着: 确保有delete操作,否则
原创
2023-10-10 09:53:06
133阅读
条款3:使容器里对象的拷贝操作轻量而正确STL中采用的都是拷贝对象的方式如果所有这些使STL的拷贝机制听起来很疯狂,就请重新想想。是,STL进行了大量拷贝,但它通常设计为避免不必要的对象拷贝,实际上,它也被实现为避免不必要的对象拷贝。和C和C++内建容器的行为做个对比,下面的数组:Widget w[maxNumWidgets];// 建立一个大小为maxNumWidgets的Widgets数组// 默认构造每个元素即使我们一般只使用其中的一些或者我们立刻使用从某个地方获取(比如,一个文件)的值覆盖每个默认构造的值,这也得构造maxNumWidgets个Widget对象。使用STL来代替数组,你
转载
2012-07-11 23:07:00
155阅读
2评论
摘要: 好莱坞通过影视作品强化文化刻板印象,塑造全球对种族、阶层的集体认知。角色设定(如拉丁裔与犯罪、犹太人与财富)
• 环境搭建:
搭建两台MySQL服务器,一台作为主服务器,一台作为从服务器,主服务器进行写操作,从服务器进行读操作。
主从配置需要注意的点
主从服务器操作系统版本和位数一致;
Master 和 Slave 数据库的版本要一致;
Master 和 Slave 数据库中的数据要一致;
Master 开启二进制日志, Master 和 Slave 的 server_id 在局域网内必须唯一;
Mast
转载
2024-08-15 09:53:10
32阅读
环境:Python 3.5.1 CentOS 7zip函数可以同时遍历两个迭代器。在编写Python代码时,通常要面对很多列表,而这些列表中的对象,可能是相互关联的。如下例: names = ['Cecilia', 'Lily', 'Maria']
&
原创
2016-05-19 12:26:41
500阅读
本文出自:http://hi.baidu.com/hins_pan/blog/item/515b0637f92499d2a3cc2b8a.html
第二大章主要讲的是vector和string这两种stl的使用。这两种stl都是continue-stored的方式来组织数据的,特别是vector更是提供了和数组非常相似行为。
两者都可以替换标准C语言中
转载
2012-03-21 22:29:42
383阅读
一、主题:(1)何时以及如何创建对象(2)何时以及如何避免创建对象(3)如何保证对象能够适时销毁(4)如何管理对象销毁之前必须进行的各种清理操作
二、考虑用静态工厂方法代替构造器
1、类可以提供一个公有的静态工厂方法,返回类的实例的静态方法
pubilc static Boolean valueOf(boolean b){&
原创
2013-04-04 13:27:03
1087阅读
1. 使用静态工厂代替构造,clone函数原因 1. 静态工厂具有名字 i.  
转载
2023-07-06 15:07:00
66阅读
Tips
《Effective Java, Third Edition》一书英文版已经出版,这本书的第二版想必很多人都读过,号称Java四大名著之一,不过第二版2009年出版,到现在已经将近8年的时间,但随着Java 6,7,8,甚至9的发布,Java语言发生了深刻的变化。
在这里第一时间翻译成中文版。供大家学习分享之用。40. 始终使用Override注解Java类库包含几个注解类型。对于典型的
转载
2023-08-09 15:49:34
52阅读
条款01:视C++为一个语言联邦 条款02:尽量以const,enum,inline替换#define 条款03:尽可能使用const 条款04:确定对象使用前先被初始化 条款05:了解C++默认编写并调用哪些函数 条款06:若不想使用编译器自动生成的函数,就该明确拒绝 条款07:为多态基类声明virtual析构函数 条款08:别让异常逃离析构函数 1. 编译单元 为免除"跨编译单元之初始化次序"问题,请以local static 对象替换non-local static对象。为免除"跨编译单元之初始化次序"问题,请以local static 对象替换n
转载
2012-08-19 21:47:00
44阅读
2评论
目录创建和销毁对象考虑用静态工厂方法代替构造器遇到多个构造器参数时要考虑用构造器用私有构造器或枚举类型强化Singleton属性通过私有构造器强化不可实例化的能力避免创建不必要的对象消除过期的对象引用避免使用终极方法对于所有对象都通用的方法覆盖equals时请遵守通用约定覆盖equals时总要覆盖hashCode始终要覆盖toString谨慎地覆盖clone考虑实现Comparable接口类和接
转载
2023-07-31 20:40:58
56阅读
导语《Effective Java》是和《Thinking in java》齐名的java进阶书籍。作者参与了JDK标准库的编写工作,对于此书的学习,让我收获很多。好记性不如烂笔头,我决定好好总结一下。本书主要内容有11章,分别从各个方面阐述了作者对于java代码编写的体会。我看的是第二版,目前最新版已经是第三版了,但是还没有在国内翻译出版。这就是英语不好的局限之处~创建和销毁对象作者认为,使用构
转载
2023-07-20 14:14:55
49阅读
Effective Java目录 文章目录Effective Java目录1、考虑使用静态方法代替工厂方法使用优点使用缺点2、参数过的多时使用建造者模式使用优点:缺点总结3、私有构造方法或枚举实现 Singleton 属性4、使用私有构造方法来定义纯静态的类使用优点:缺点:5、使用依赖注入来取代硬链接资源使用优点总结6、避免创建不必要的对象使用优点场景描述总结7、消除过期对象的引用好处 1、考虑使
转载
2023-08-20 21:59:37
32阅读
Effective Java章节笔记1> 对象的创建和销毁1.1> 优先考虑使用静态工厂方法代替构造器1.2> 遇到多个构造器参数时要考虑使用构建器(builder)1.3> 用私有构造器或枚举类型强化单例模式(singleton)1.4> 通过私有构造器强化不可实例化的能力1.5> 避免创建不必要的对象1.6> 消除过期的对象引用1.7> 避免使
转载
2024-01-15 22:23:44
13阅读
目录一、创建和销毁对象(1~9)二、对于所有对象都通用的方法(10~14)三、类和接口(15~25)四、泛型(26~33)五、枚举和注解(34~41)六、Lambda 和 Stream(42~48)七、方法(49~56)八、通用编程(57~68)九、异常(69~77)十、并发(78~84)十一、序列化(85~90) 简介: Java之父James Gosling鼎力推荐、Jolt获奖作品全新升级
转载
2023-07-20 14:12:27
111阅读