1.类的行为分类:看起来像一个值:看起来想一个指针.     1)类的行为像一个值,意味着他应该有自己的状态.当我们拷贝一个像值的对象时,副本和原对象是完全独立的.改变副本不会对原有对象有任何影响,反之亦然.     2)行为像指针的类则共享状态.当我们拷贝一个这种类的对象时,副本和原对象使用相同的底层数据.改变副本也会改变原对象,反之亦然.     3)举例:标准库容器和string类行为像一个值:shared_ptr行为类似指针:IO类型和unique_ptr不允许拷贝或者赋值,他们既不…
1.阻止拷贝的原因:对于某些类来说,拷贝构造函数和拷贝赋值运算符没有意义.举例:iostream类阻止了拷贝,以避免多个对象写入或者读取相同的IO缓冲.   2.阻止拷贝的方法有两个:新标准中可以将成员函数定义成删除的函数:在旧标准中可以使用private进行拷贝控制,只声明不定义.推荐使用第一种.   3.删除的函数:对函数进行了声明,但是不能以任何方式使用它们,通过在函数参数列表后面加上=delete来将函数定义成删除的.=delete必须出现在函数第一次声明的地方. struct NoCo…
1.析构函数:释放对象使用的资源,并销毁对象的非static数据成员:析构函数不接受参数,因此不能被重载.对于一个给定类,有且只有一个析构函数.   2.析构函数的组成:一个函数体+一个析构部分(implicit):所完成的工作:先执行函数体,然后按照初始化成员的逆序销毁成员.在这里需要注意的是销毁成员的并不是函数体,而是析构部分.   3.什么时候会调用析构函数:     1)变量在离开其作用域时     2)当一个对象被销毁时,其成员被销毁     3)容器被销毁时,其元素被销毁     4…
1.一个类通过定义五种特殊的成员函数来控制此类型对象的拷贝.移动.赋值和销毁:拷贝构造函数.拷贝赋值运算符.移动构造函数.移动赋值运算符和析构函数.(拷贝.移动.析构)   2.拷贝和移动构造函数定义了当用同类型的另一个对象初始化本对象时做什么:拷贝和移动赋值运算符定义了讲一个对象赋予同类型的另一个对象时做什么:析构函数定义了当此类型对象销毁时做什么.这些操作统称为拷贝控制操作.   3.如果一个类没有定义所有这些拷贝控制成员,编译器会自动为它定义缺失的操作.   4.拷贝构造函数:构造函数的第…
类默认函数:构造函数,拷贝构造函数,赋值函数和析构函数 // person.h #ifndef _PERSON_H_ #define _PERSON_H_ class Person{ public : Person(); Person(int myage, char *myname); Person(const Person &a); Person& operator=(const Person& other); ~Person(void); void set_age(int my…
/* * main.cpp * * Created on: Apr 7, 2016 * Author: lizhen */ #include <iostream> #include "MySqrt.h" #include <math.h> //#include "findMedianSortedArrays.h" //#include "myfindMedianSortedArrays.h" //#include &quo…
一.拷贝构造函数 1. 形式 class A { public: // ... A(const A &); // 拷贝构造函数 }; 2. 合成拷贝构造函数 编译器总会为我们合成一个拷贝构造函数,即使我们定义了其他构造函数. 3. 拷贝构造函数不应该是explicit的 拷贝构造函数在必要时可以被隐式地使用. 4. 拷贝初始化 ①用=定义对象 string s1 = s; string s2 = "hello"; string s3 = string(10, 'c'); ②传递…
在游戏开发中,游戏角色占了很大的篇幅,可以说游戏中所有的内容都是由主角所带动.这里就介绍一下角色类的设计和持久化. 一.角色类应用场景和设计思想 游戏中的角色类型不一而足,有不同的技能,有不同的属性等等.有些一个玩家只有一个角色,有些一个玩家可以有多个角色.这里就目前项目来描述一下角色类的构造,思路都是类似的. 早期我写角色类都是直接一个Class,然后想到什么属性就往里面添加,如果游戏过程中需要对属性的修改,逻辑判断也写在这个类中,这样必然导致类的庞大和臃肿,最后你自己也忘记了自己写在什么地方…
在上下班的路上,听几首自己喜欢的音乐来打发无聊的等公交车和地铁的时间是现代年轻人的常态.音乐作为最能鼓动人心的"语言",也成为了人们在互联网生活里占比例最高的消费活动之一,一款好看,功能又全面的音乐APP往往最打动用户的心. 在当下的互联网音乐服务中,真正算得上是音乐管理软件的是Apple Music.视觉设计精致,全平台统一,在欧美和古典音乐上资源非常丰富,是一流的音乐流媒体服务产品,也是笔者最常用的软件之一.最近也正好关注到,国民原型设计工具Mockplus举办了一场以音乐APP为…
JDBC创建数据库基本连接 //1.加载驱动程序 Class.forName(driveName); //2.获得数据库连接 Connection connection = DriverManager.getConnection(dbResource,username,password); // String sql = ""; //3.获得SQL处理语句 Statement statement = connection.createStatement(); PreparedState…