
C++
汤姆鱼
微信公众号「汤姆鱼」
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
VS2017 创建 C++ 项目
在 Visual Studio 2017 及更高版本, Windows 桌面向导取代 Win32 应用程序向导中,因此创建 C++ 的方法也同以前有些不一样。(1)、新建--->项目:(2)、Windows桌面--->Windows桌面向导:(3)、控制台应用程序--->空项目:(4)、源文件--->添加--->新建项:(5)、...原创 2019-11-23 20:58:51 · 8596 阅读 · 0 评论 -
VS2017安装时,共享组件、工具和SDK的位置不能更改
注:方法参考了许多大佬的方法,感谢!!今天,先升级一下 VS 版本,所以就安装了 VS2017 ,但是第一次安装的位置选择错了,于是卸载后重新安装,结果第二次安装的时候,共享组件、工具和SDK的安装位置不能更改(如下图),于是就在网上查找办法解决,现总结如下:一、找到电脑上 VS 的注册表,删除共享组件、工具和 SDK 的注册表: WIN + R --> ...原创 2019-11-23 15:48:00 · 14017 阅读 · 14 评论 -
剑指Offer(牛客版)--面试题51: 数组中的逆序对
题目描述:在数组中的两个数字如果前面一个数字大于后面的数字,则这两个数字组成一个逆序对。输入一个数组,求出这个数组中的逆序对的总数。分析:完整代码:class Solution {public: int InversePairs(vector<int> data) { //检查输入的合法性 if(data.empty...原创 2019-07-12 12:35:22 · 188 阅读 · 0 评论 -
if------else if------else之间的关系
(1)、if------else if------else的执行顺序:(2)、else 永远与最近的 if 相匹配;(3)、if 与 if 之间的关系是并列关系,按照顺序执行;(4)、if 与 else if 之间的关系是分支关系,当满足 if 条件之后,else if 语句不再执行;...原创 2019-06-24 12:36:11 · 5819 阅读 · 0 评论 -
函数指针
本文转载自:https://www.runoob.com/w3cnote/cpp-func-pointer.html1、函数指针函数存放在内存的代码区域内,它们同样有地址,如果我们有一个int test(int a)的函数,那么,它的地址就是函数的名字,这一点如同数组一样,数组的名字就是数组的...转载 2019-05-22 13:06:47 · 207 阅读 · 0 评论 -
C++中的Memset()函数
Memset()函数函数原型:void *menset(void *str, int c, size_t n)作用:复制字符 c 到参数 str 所指向的字符串的前 n 个字符;参数:str ------ 指向要填充的内存块;c ------ 要被设置的值;n ------ 要被设置为该值的字节数分享、探讨、思考:...原创 2019-05-08 15:23:13 · 236 阅读 · 0 评论 -
指针数组与数组指针的区别
a、指针数组:是指一个数组里面装着指针,也即指针数组是一个数组;定义形式:int *a[10];如图所示:b、数组指针:是指一个指向数组的指针,它其实还是一个指针,只不过是指向数组而已;定义形式:int (*p)[10]; 其中,由于[]的优先级高于*,所以必须添加(*p).区分方法:主要看后面的两个字是什么(前面是修饰作用),因此指针数组是数组,而数组指针是指针。...原创 2019-03-01 19:56:23 · 52054 阅读 · 5 评论 -
C++学习笔记(十)
1、编译时的多态性是通过函数重载和模板实现的,运行时的多态性是通过虚函数体实现的;2、在关系模式中凡能唯一标识元组的最小属性集称为该关系的键或码; 关系模式中可能有若干个键,它们称为该表的候选码或候选键;3、C++程序开发步骤分为:编辑、编译、链接、运行;4、字符串的长度不包括空字符"0";5、多态性只能发生在运行时;6、线性表中的元素需要具有相同的数据性;...原创 2019-01-07 23:46:02 · 218 阅读 · 0 评论 -
C++学习笔记(十一)
1、逻辑数据模型也称数据模型,是面向数据库系统的模型,着重于在数据库系统的一级实现; 成熟并大量使用的数据模型有层次模型、网状模型、关系模型和面向对象模型2、有多个根节点的数据结构一定是非线性结构;有多个后件的数据结构必定是非线性结构;3、程序调试的任务是诊断和改正程序中的错误;4、复制构造函数只负责初始化成员变量,没有输出语句;5、软件测试的目的是尽可能地发现软件中...原创 2019-01-11 22:32:53 · 180 阅读 · 0 评论 -
C++学习笔记(九)
1、非线性结构可以没有根节点和叶子节点;2、宽度是指最大模块的层的控制跨度;3、程序调试的任务是诊断和改正程序中的错误;4、数据库系统在其内部分为三级模式,即概念模式、内模式和外模式; 一个数据库只有一个概念模式和一个内模式,,有多个外模式;5、为了能够正确的初始化对象,构造函数必须允许修改对象,故构造函数不能用const来修饰;6、友元函数是指某些虽然不是类成...原创 2018-12-23 23:20:45 · 164 阅读 · 0 评论 -
C++学习笔记(七)
1、初始化规则: 初始化列表的初始化变量顺序是根据成员变量声明的顺序来执行的; 若有成员对象,先初始化成员对象,多个成员变量按规则1执行; 2、extern是声明函数或全局变量的作用范围的关键字,它只是一个声明而不是定义; 3、new运算符用于申请动态存储空间,返回指向操作数类型变量的指针,使用new运算符创建类对象时要调用类的构造函数,使用new运算符创建数组时必须为...原创 2018-12-10 22:54:55 · 333 阅读 · 0 评论 -
C++学习笔记(五)
1、不能直接将整形变量赋值给常指针;2、返回值类型对区别重载函数没有意义;3、在类成员的访问控制中,如果没有显示声明成员访问性质,则默认为私有;4、派生类的友元函数可以访问本类中的所有成员以及基类的公有成员;5、模板定义的一般形式: template<typename T>T 通用函数的定义6、对象的基本特点:标识唯一性、分类性、多态性、封装性、模块...原创 2018-12-05 19:11:53 · 234 阅读 · 0 评论 -
C++学习笔记(六)
1、在类模板声明中,每个模板类型形参前面都必须用关键字Class和typename来修饰;2、具有两个指针域的链表可能时双向链表; 双向链表是线性结构,二叉树为非线性结构,连活着均具有由两个指针域; 二叉树通常采用链式存储结构,也可以采用其他结构; 循环链表是线性结构;3、默认参数是通过给形参表中的形参提供明确的出事值来指定的,可以为一个或多...原创 2018-12-07 23:39:29 · 144 阅读 · 0 评论 -
C++学习笔记(四)
1、虚拟类型参数出现在模板的形参表中,可以省略模板实参;2、cin是一个标准输入流类; open并不是输出流的一个成员函数;3、函数返回类型可以是普通常量型的,可以返回指针以及自定义类型,但不能包含关键字true;4、在类体中定的成员函数,C++系统会自动将它们作为内联函数处理,而在类外定义的成员函数,而在类外定义的成员函数,系统并不把他们默认为内联函数;5、在定义链...原创 2018-11-27 23:26:49 · 222 阅读 · 0 评论 -
C++学习笔记(三)
1、C++语言规定枚举常量的默认值依次等于0、1、2、3、……,n-1; 再给常量赋初值时,如果给其中任何一个枚举常量赋初值,则其后的枚举常量将按自然数的规则依次赋初值;2、const是一个C++语言的关键字,它限定一个变量不允许被改变,限定符声明变量只能被读,必须初始化;3、友元函数是指某些虽然不是类成员却能访问类的所有成员的函数,故友元函数不是类的成员函数; ...原创 2018-11-26 23:30:33 · 166 阅读 · 0 评论 -
C++学习笔记(一)
1、const是一个C++语言的关键字,它限定一个变量不允许被改变。使用const在一定程度上可以提高程序的安全性和可靠性。限定声明变量只能被读,必须初始化;2、指向常量的指针,定义时初始化与否均可;3、给指针赋值有三种情况:用取地址运算符“&”将变量地址赋给指针变量,如p=&a; 将一个指针变量中的地址赋给另一个指针变量如:如:p=p1; 给指针变量赋空值0,如q...原创 2018-11-24 22:40:35 · 403 阅读 · 0 评论 -
C++学习笔记(二)
1、常对象的基本知识:常对象只能调用它的常成员函数,而不能调用非const函数,常对象的成员函数不一定都是常成员函数,只需保证其数据成员即可。2、this作用域是在类内部;当在类的非静态成员时,编译器会自动将对象本身的地址作为一个隐含参数传递给函数,另外,全局函数和静态函数都不能使用this指针。 3、虚函数必须是基类的非静态成员函数,其访问权限可以是protected或public;如果...原创 2018-11-25 20:23:36 · 200 阅读 · 0 评论