
C++
C++
Emma-Zhang
这个作者很懒,什么都没留下…
展开
-
C++--基本知识
本篇文章的内容有:C++关键字命名空间C++的输入与输出缺省参数函数重载名字修饰引用(取别名)1. 作形参(既可以达到传值的效果,又可以达到传地址的效果)2. 作返回值(生命周期比函数长)内联函数C++关键字在C++98的标准下为63个关键字 命名空间定义命名空间//1. 普通的命名空间namespace N...原创 2018-08-23 13:04:03 · 492 阅读 · 0 评论 -
数据结构(8)线索二叉树的介绍以及代码实现
这篇文章我们接着讲二叉树。文章目录1. 二叉树遍历--先序遍历、中序遍历、后序遍历和层次遍历1. 先序遍历:ABDEGHCF2. 中序遍历:DBGEHAFC3. 后序遍历:DGHEBFCA4. 层次遍历:ABCDEFGH2. 线索二叉树的定义3. 二叉树的线索化1. 二叉树的线索化代码实现4. 线索二叉树的基本运算1. 二叉树遍历–先序遍历、中序遍历、后序遍历和层次遍历所谓二叉树的遍历,是指...原创 2019-08-24 13:15:52 · 325 阅读 · 0 评论 -
数据结构(3.1)二叉树详解一
文章目录二叉树满二叉树&完全二叉树二叉树的性质(重要)二叉树的存储结构二叉树的基本操作(c++实现)上篇文章中,我们介绍了树形结构与树的相关概念,这篇文章我们讲讲二叉树。二叉树二叉树是一种特殊的树,二叉树的特点有:每个结点最多有两棵子树,即二叉树不存在度大于2的结点;二叉树的子树有左右之分,其子树的次序不能颠倒;二叉树即使只有一颗子树也要明确指出该子树是左子树还是右子树。...原创 2019-08-24 11:59:30 · 2362 阅读 · 0 评论 -
C++--关于指针与const限定符
指向const对象的指针如果指针指向const对象,C++语言强制要求指向const对象的指针也必须具有const特性。const int a = 10;const int *pa = &a;const限定了pa指针所指向的对象本身,而并非pa本身,即允许给pa重新赋值,但不允许通过pa改变a的值。即:const int a = 10;const int b = 20;co...原创 2019-07-10 11:29:58 · 212 阅读 · 0 评论 -
冒泡排序及其优化
冒泡排序第一版void bubble_sort1(int *arr,int sz){ int i = 0; int j = 0; for (j = 0; j < sz-1; j++) { //循环几趟 for (i = 0; i < sz - 1 - j; i++) { //每一趟循环几次 if (arr[i] > arr[i + 1]) { in...原创 2019-06-06 18:13:59 · 315 阅读 · 0 评论 -
求解投骰子游戏问题(C++)
【问题描述】玩家根据骰子的点数决定走的步数,即骰子点数为1时可以走一步,点数为2时可以走两步,点数为n时可以走n步。求玩家走到第n步(n≤骰子最大点数且投骰子方法唯一)时总共有多少种投骰子的方法。输入描述:输入包括一个整数n(1≤n≤6)。输出描述:输出一个整数,表示投骰子的方法数。输入样例:样例输出:【思路】【代码】#include<iostream>usin...原创 2019-05-19 12:21:59 · 3704 阅读 · 0 评论 -
求解回文序列问题(C++)
【问题描述】如果一个数字序列逆置后跟原序列是一样的,则称这样的数字序列为回文序列。例如,{1,2,1}、{15,78,78,15}、{11,2,11}是回文序列,而{1,2,2}、{15,78,87,51}、{112,2,11}不是回文序列。现在给出一个数字序列,允许使用一种转换操作:选择任意两个相邻的数,然后从序列中移除这两个数,并将这两个数的和插入到这两个之前的位置(只插入一个和)。对于所...原创 2019-05-19 11:55:25 · 1916 阅读 · 0 评论 -
求解幸运数问题(C++)
【问题描述】小明同学在学习了不同的进制之后用一些数字做起了游戏。小明同学知道,在日常生活中最常用的是十进制数,而计算机中的二进制数也很常用。现在对于一个数字x,小明同学定义出两个函数f(x)和g(x),f(x)表示把x这个数用十进制写出后各数位上的数字之和,例如f(123)=1+2+3=6;g(x)表示把x这个数用二进制写出后各数位上的数字之和,例如123的二进制表示为1111011,那么g(1...原创 2019-05-19 11:40:02 · 4011 阅读 · 1 评论 -
求解n阶螺旋矩阵问题(C++)
【问题描述】 创建n阶螺旋矩阵并输出。输入描述:输入包含多个测试用例,每个测试用例为一行,包含一个正整数n(1≤n≤50),以输入0表示结束。输出描述:每个测试用例输出n行,每行包括n个整数,整数之间用一个空格分隔。输入样例:样例输出:【思路】:...原创 2019-05-19 11:16:11 · 5764 阅读 · 0 评论 -
C++--异常处理
C++异常机制使用了三个的关键字 throw ──抛出一个异常 try ──标识可能出现的异常代码段 catch ──处理异常的代码段异常,当一个函数发现自己无法处理的错误时会抛出异常,让函数的调用者 直接或间接的来处理这个问题。1.异常的抛出和捕获异常是通过抛出对象而引发的,该对象的类型决定了应该激活哪个处理代码被选中的处理代码是调用链中与该...原创 2018-09-12 20:31:38 · 183 阅读 · 0 评论 -
C++工具--异常及异常处理
日有春夏秋冬,人有生老病死,程序也不例外。程序死亡的三种方式: - 无疾而终(自然死亡,通常是return 0) - 自杀(abort与exit) - 他杀(任务管理器中关闭该程序,系统对异常进行处理使程序终止)C异常处理传统错误处理方式: 终止程序(除数为0) 返回一个表示错误的值,附加错误码(GetLastError()) 返回一个合法值,让程序处于某种...原创 2018-08-30 08:16:32 · 531 阅读 · 0 评论 -
C++--类的this指针
关于this指针的通俗解释,有一个很经典的例子: 假设你有一个图纸,你按照这个图纸造了许多房子,这些房子外部分别标了不同的名称以区别,但是它的内部陈设都一样; 当你进入房子时,你可以看见房子里的物品:桌子,凳子等,当你却看不到房子的全貌了,你对房子的“内部陈设”动了手脚,但此时你已经不知道你进入的是哪个房子了,动的是哪个房子的东西了看个代码来理解一下:class Date{publ...原创 2018-08-29 14:00:55 · 6029 阅读 · 4 评论 -
C语言和C++中struct的区别?C++中struct和class的区别?
C语言和C++中struct的区别? struct C语言 C++ 成员 没有函数成员,只有数据 函数和数据都可以有 访问权限 没有访问权限的设定,及对外不隐藏数据 有访问权限的设定private,public,protected 是否可以继承 不可以 有继承关系C++中struct和class的区别? C...原创 2018-08-24 13:57:15 · 2592 阅读 · 0 评论 -
C++-- 如何在类外访问一个类中私有的成员变量?
如何在类外访问一个类中私有的成员变量? 我在网上搜答案的时候看到大部分回答都是在类内部创建一个接口,所以此方法我就不再多做赘述,今天我说的方法是利用指针的方法。话不多说,上代码:class Test{private: int a = 10; int b = 100;};int main(){ Test s; cout &amp;amp;amp;amp;lt;&amp;amp;amp;amp;lt; si...原创 2018-08-24 11:07:14 · 24231 阅读 · 2 评论 -
C++--名字修饰
名字修饰在C/C++中,一个程序要运行起来,需要经历以下几个阶段:预处理、编译、汇编、链接。名字修饰(Name Mangling)是一种在编译过程中,将函数、变量的名称重新改编的机制,简单来说就是编译器为了区分各个函数,将函数通过一定算法,重新修饰为一个全局唯一的名称。为什么C语言不支持函数重载?C语言的名字修饰规则非常简单,只是在函数名字前面添加了下划线。C++要支持函数重载...原创 2018-08-23 13:46:03 · 2362 阅读 · 0 评论 -
十进制与二进制之间的转化
最近我频频要算十进制与二进制之间的转化,所以我干脆就写了个代码来解决这个问题,代码主要自用,很多问题都没有考虑,是很粗糙的。#include<iostream>using namespace std;int fun(int n){ int result = 0; int num=1; while (n){ result = (n%2)*num + result; ...原创 2019-09-26 11:20:07 · 114 阅读 · 0 评论