12 2018 档案
摘要:1、解决的问题: 在 B 类中,组合了一个 A 类对象,其中A类设计了构造函数。由于构造函数的调用规则,设计了构造函数就必须调用,但在定义B类时没有机会初始化A,因此采用构造函数的初始化列表来解决。 2、构造和析构调用顺序 先执行被组合对象的构造函数,如果组合对象有多个,则按照定义顺序,而不是按照初
阅读全文
摘要:1、复制构造函数、及new空间申请 复制构造函数,也是构造函数。只在初始化时调用,如果定义对象后赋值,比如,t1=t2,则只是运算符重载,没有调用构造函数。 注意: (1)复制构造函数是函数的形参是类的对象的引用的构造函数; (2)用一个已经存在的对象,初始化一个新的同类对象; (3)系统会自动生成
阅读全文
摘要:1、构造函数 (1)每个类都要定义它自己的构造函数和析构函数,是类的成员函数。 特点:名称与类名相同;没有返回值;一定是共有函数,可以直接访问类内所有成员函数;可以带默认形参,可以重载; (2)注意: (1)类中没有定义任何构造函数时,才使用默认构造函数,只要定义了,就不会存在默认构造函数; (2)
阅读全文
摘要:1、类的封装、实现、对象的定义及使用 (1)类是一组对象的抽象化模型。类对象将数据及函数操作集合在一个实体中,只需要接口,而不需要知道具体的操作。 隐藏细节,模型化; 类内自由修改; 减少耦合,相当于一个轮子; (2)类的实现 类的函数,原型声明要在类的主体中,而函数的具体实现一般卸载类声明之外。如
阅读全文
摘要:一、C语言中,为什么字符串可以赋值给字符指针变量? char *p; a='5'; p=&a; //显然是正确的, p="abcd"; //但为什么也可以这样赋值?? 问:一直理解不了为什么可以将字串常量赋值给字符指针变量,请各位指点! 答:双引号做了3件事: 1.申请了空间(在常量区),存放了字符
阅读全文
摘要:1、内存泄漏 动态申请的内存空间没有正常释放,但也不能继续使用。 2、指针悬挂 让指针指向一个已被释放的空间,该空间已不存在。
阅读全文
摘要:1、指针变量 (1)指针变量必须在初始化后才可以正常使用,初始化就是给他分配一个有效的数据地址。 先初始化,后使用。 (2)指针可以进行加减运算,++ 或者 --:将指针的位置向前或者向后移动一个数据单元(char是一个格,int 是4个格子)。 (3)指针之间直接相加没有意义,但相减是求出:两个指
阅读全文
摘要:1、引用概念 引用是别名,必须在声明的时候初始化。即:是指一个已定义变量的别名。(一个内存空间,有两个名字都可以操作) 引用:在函数调用时,是变量的别名,不可以单独存在,使用时必须要初始化; 指针:本身有自己的地址,可以单独存在。 2、引用基本举例 引用在交换时的例子: 3、引用本质思考 (1)引用
阅读全文
摘要:1、const 常量概念 对于 const 定义的常量,必须在定义时初始化,不能在程序执行运行过程中改变。 2、指针常量、常量指针 区别 (1)技巧:从右向左读,替代方法: p:换为 p is a; * :换为 point to ; (2)const 在 * 左边:表示,指针指向为常量,不能改变内容
阅读全文
摘要:1、const (1)C++对 const 常量的处理过程:当编译器碰到 常量声明 时,在符号表中放入常量,编译时发现使用常量,则直接以符号表中的值替换。 (2)如果,编译中发现,对 const 使用 extern 或者 & 操作符时,则会给对应变量分配新的存储空间。 符号表保存的内容: key v
阅读全文
摘要:1、内存模式 一个程序执行时,先复制到内存,然后CPU逐句读取指令执行。 每个存储单元存放一个字节(8bit)数据,每个有一个唯一的地址,地址是顺序编码的。比如:一台计算机256MB内存,则有256*1024*1024个内存单元,如果用7位十六进制数表示地址值,则范围是:0x0000000~0xFF
阅读全文
摘要:1、C++ 表达式返回值 返回引用:当函数返回引用类型时,没有复制返回值。相反,返回的是对象本身。(与之对应的C语言中,返回的是变量的值) C++中,表达式返回的是变量本身(也就是变量对应的地址)。编译器帮我们完成 取地址的工作。 2、引用与指针 引用是别名,必须在声明的时候初始化。 引用:在函数调
阅读全文
摘要:1、为什么类中引用成员函数? 类将属性和方法做了封装。类是一种数据类型,也就是:固定大小内存块的别名。 类的定义是一个抽象的概念,定义时不分配内存,当用类定义对象时,才分配一个固定大小的内存块。 此时,定义对象后,类内定义的变量就会执行一次初始化,但是主函数输出area时就是乱码,因为是直接去对应内
阅读全文
摘要:1、基本数据类型 sizeof 是一个关键字,它是一个编译时运算符,用于判断变量或数据类型的字节大小。 sizeof 运算符可用于获取类、结构、共用体和其他用户自定义数据类型的大小。 使用 sizeof 的语法如下: 其中,data type 是要计算大小的数据类型,包括类、结构、共用体和其他用户自
阅读全文
摘要:1、多线程 线程是操作系统能够进行运算调度的最小单位。它被包含在进程之中,是进程中的实际运作单位,一个进程可以包含多个线程。一条线程指的是进程中一个单一顺序的控制流,一个进程中可以并发多个线程,每条线程并行执行不同的任务。本质上CPU同一时刻只干了一件事,只能执行一个线程。一个线程是一个execut
阅读全文
摘要:1、list 列表 有序集合,随时增删。包含的数据类型可以不同:整数、浮点数、字符串、list、tuple、dict、set、bool、空值、常量。 list = [12, 'Yummy', 19.2, [1, 3, 'zhan']] list名为列表,相当于一个数组 list列表是有序的,其中的每
阅读全文
摘要:快捷键设置方法:https://blog.csdn.net/wrzfeijianshen/article/details/53230789 https://blog.csdn.net/wrzfeijianshen/article/details/77782939 常用快捷键总结: Ctrl+K,Ct
阅读全文
摘要:线性代数是机器学习的数学基础之一,这里总结一下深度学习花书线性代数一章中机器学习主要用到的知识,并不囊括所有线性代数知识。 2.1 基础概念 Scalars: 一个数; Vctors: 一列数; Matrices: 二位数组的数,每个元素由两个下标确定; Tensors: 多维数组的数。 2.2 矩
阅读全文
摘要:Deep Learning是大神Ian GoodFellow, Yoshua Bengio 和 Aaron Courville合著的深度学习的武功秘籍,涵盖深度学习各个领域,从基础到前沿研究。因为封面上有人工智能生成的鲜花图像,人送外号“花书” 。该书系统地介绍了深度学习的基础知识和后续发展,是一本
阅读全文