C++的三大特性封装、继承和多态

封装可以使得代码模块化,继承可以扩展已存在的代码,他们的目的都是为了代码重用。而多态的目的则是为了接口重用 封装:封装是在设计类的一个基本原理,是将抽象得到的数据和行为(或功能)相结合,形成一个有机的整体,也就是将数据与对数据进行的操作进行有机的结合,形成“类”,其中数据和函数都是类的成员。 继承:如果一个类别B“继承自”另一个类别A,就把这个B称为“A的子类”,而把A称为“B的父类别”也可以称“A是B的超类”。继承可以使得子类具有父类别的各种属性和方法,而不需要再次编写相同的代码。在令子类别
分类: 其他 发布时间: 10-06 20:17 阅读次数: 0

通过Java创建XML(中文乱码已解决)

package com.zyb.xml; import java.io.FileOutputStream; import java.io.OutputStream; import java.io.OutputStreamWriter; import java.io.Writer; import org.dom4j.Document; import org.dom4j.DocumentHelper; import org.dom4j.Element; import org
分类: 其他 发布时间: 10-06 20:17 阅读次数: 0

小程序发展前景的那些事儿

2017年小程序的问世完美解决了原生应用与Web应用的短板,以"无须安装、用完即走"的轻便形态,快速解决用户的实际需求,成为移动互联网下半场的核心。 未来几年,因小程序的用户体验、开发成本、流量、无须安装、入口增多等诸多优势,越来越多的企业将会拥抱小程序。 小程序会在智慧零售、电商、餐饮、工具、游戏等方面发挥它得天独厚的优势。 现已有成熟的技术解决方案也解决了编写一套小程序代码,适应各个宿主环境的技术方案。 所以对于小程序,从个人职涯发展,个人技术体系的完善,快速适应人才市场需求等,我们需要拥
分类: 其他 发布时间: 10-06 20:17 阅读次数: 0

C++虚表的原理

下面这篇文章讲的很好。 http://www.cnblogs.com/lihaosky/articles/1606502.html 假设我们有这样的一个类: class Base { public: virtual void f() { cout << "Base::f" <<> virtual void g() { cout << "Base::g" <<> virtual void h() { cout << "Base::h" <<> }; 按照上面的说法,我们可以通过Base的实例来得
分类: 其他 发布时间: 10-06 20:17 阅读次数: 0

初始面向对象 初始面向对象

初始面向对象 一、面向过程:面向过程的程序设计的核心是过程(流水线式思维),过程即解决问题的步骤,面向过程的设计就好比精心设计好一条流水线,考虑周全什么时候处理什么东西。 优点:极大地降低了写成学的复杂度,只需要顺着执行的步骤,堆叠代码即可 缺点:一套流水线或者流程就是用来解决一个问题,如果修改代码就都得改变 二、面向对象:上帝的思想 优点:解决了程序的扩展性。对某一个对象单独修改,会立刻反映到整个体系中,如对游戏中一个人物参数的特征和技能修改都很容易。 缺点:可控性差,无法向面向过程的程序设
分类: 其他 发布时间: 10-06 20:17 阅读次数: 0

随笔分类 - 计算机网络基础知识 计算机网络知识简单介绍

计算机网络知识简单介绍 一、网络基础 1.网络指的是什么?   计算机与计算机之间通过物理链接介质(网络设备)连接到一起。   计算机与计算机之间基于网络协议通信(网络协议就相当于计算机界的英语) 2.osi七层协议: 互联网协议按照功能不同分为osi七层或tcp/ip五层或tcp/ip四层 每层运行常见物理设备: 3.五层模型讲解 物理层:由来:计算机和计算机之间要想通信,就必须接入internet,言外之意就是计算机之间必须完成组网。      功能:主要基于电器特性发送高低电压,高电压对
分类: 其他 发布时间: 10-06 20:17 阅读次数: 0

ICPC2018Beijing 现场赛D Frog and Portal 构造

传送门 很有趣的一个构造题,跟队友训练的时候,一直在考虑,通过k传送到k,设置断点,然后各区间乘法原理,斐波那契数列取项求和,乘积之类的想法,并不对。 有些显然的结论。 总的方案数等于,到达199的方案数,加上到达198的方案数。但是我们通过k传送到k,可以构造出后面的方案数均为空。 从k传送到k,则总方案不会计入到达该层方案数。 从k传送到199,则总方案会计入一倍到达该层方案。 从k传送到k+1,则到达k+1层的方案会累加入到达k层的方案。 我们发现上面的三种构造,拥有0,1和+(相同时即
分类: 其他 发布时间: 10-06 20:17 阅读次数: 0

连接数据库 创建表 字段和参数 增删改查

今日内容 django连接数据库 创建表 字段和参数 增删改查 orm单表操作 orm语句 -- sql -- 调用pymysql客户端发送sql -- mysql服务端接收到指令并执行 ORM简介 MVC或者MVC框架中包括一个重要的部分,就是ORM,它实现了数据模型与数据库的解耦,即数据模型的设计不需要依赖于特定的数据库,通过简单的配置就可以轻松更换数据库,这极大的减轻了开发人员的工作量,不需要面对因数据库变更而导致的无效劳动 ORM是“对象-关系-映射”的简称。(Object Relat
分类: 其他 发布时间: 10-06 20:17 阅读次数: 0

Flutter-库的使用

对于项目的开发,模块化很重要,讲到模块化,就需要用到库,在Dart中,库的使用是通过import关键字引入的 import 'package:flutter/material.dart'; 其中import后面跟着的是库的URI,上面例子中的路径格式为:package:scheme,其中scheme是由指定的库通过包管理器提供的,在Flutter中,Dart是通过pub工具来管理包的。 上面是外部的库的引入方式,对于内部库,dart的路径格式为:dart:scheme,示例如下所示: im
分类: 其他 发布时间: 10-06 20:17 阅读次数: 0

C语言中的多态

一、多态的主要特点 1、继承体系下。继承:是面向对象最显著的一个特性。继承是从已有的类中派生出新的类,新的类能吸收已有类的数据属性 和行为,并能扩展新的能力,已有类被称为父类/基类,新增加的类被称作子类/派生类。 2、子类对父类的虚函数进行重写。 3、虚表。 在面向对象语言中,接口的多种不同现方式即为多态。同一操作作用于不同的对象,可以有不同的解释,产生不同的执行结果,这就是多态性。简单说就是允许基类的指针指向子类的对象。 二、代码实现 1、C++中的继承与多态 1 class Base
分类: 其他 发布时间: 10-06 20:17 阅读次数: 0

HTTP协议 django下载安装 url路由分发

今日内容 HTTP协议 MVC和MTV框架模式 django下载安装 django的url路由分发 HTTP协议 http协议 请求信息格式 GET / HTTP/1.1 请求行 Host: 127.0.0.1:8003 请求头 Connection: keep-alive Cache-Control: max-age=0 Upgrade-Insecure-Requests: 1 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64)
分类: 其他 发布时间: 10-06 20:17 阅读次数: 0

阿里云ECS服务器挂载数据盘

最近启动集群,发现服务器系统盘不够用了。查看磁盘占用情况,系统盘使用了98%,考虑到后期的需求,不得不增加数据盘,这里记录下数据盘的挂载过程。 1 确认数据盘是否存在 fdisk -l #查看ECS上的数据盘 图中 /dev/vda是系统盘,/dev/vdb和/dev/vdc是数据盘。 2 对数据盘进行分区 fdisk /dev/vdb 在分割硬盘模式下还有如下命令: ①输入 m 显示所有命令列示。 ②输入 p 显示硬盘分割情形。 ③输入 a 设定硬盘启动区。 ④输入 n 设定新的硬盘分
分类: 其他 发布时间: 10-06 20:17 阅读次数: 0

视图 模板渲染 过滤器(内置) 标签

今日内容 视图 视图加装饰器 模板渲染 过滤器(内置) 标签 视图 一个视图函数(类),简称视图,是一个简单的Python 函数(类),它接受Web请求并且返回Web响应。 响应可以是一张网页的HTML内容,一个重定向,一个404错误,一个XML文档,或者一张图片 无论视图本身包含什么逻辑,都要返回响应。代码写在哪里也无所谓,只要它在你当前项目目录下面。除此之外没有更多的要求了 FBV和CBV 视图 FBV(函数类) FBV(function base views) 就是在视图里使用函数处理请
分类: 其他 发布时间: 10-06 20:17 阅读次数: 0

bzoj3589 动态树 树链剖分+容斥

题目传送门 https://lydsy.com/JudgeOnline/problem.php?id=3589 题解 事件 \(0\) 不需要说,直接做就可以了。 事件 \(1\) 的话,考虑如果直接查询然后相加的话,会有很多段被算重了。于是考虑容斥,把算重的段给减掉就可以了。至于如何计算每一段的答案,直接树剖吧。 时间复杂度 \(O(^5 q\log^2n)\)。 #include<bits/stdc++.h> #define fec(i, x, y) (int i = head[x],
分类: 其他 发布时间: 10-06 20:17 阅读次数: 0

ECS 容器实例生命周期

当 Amazon ECS 容器代理将实例注册到集群时,容器实例将其状态报告为 ACTIVE,并将其代理连接状态报告为 TRUE。此容器实例可接受运行任务请求。 如果停止(而不是终止)Amazon ECS 容器实例,则状态将保持为 ACTIVE,但代理连接状态将在几分钟内转换为 FALSE。在容器实例上运行的任何任务将停止。如果您再次启动容器实例,则容器代理将使用 Amazon ECS 服务重新连接,并且您能够在实例上再次运行任务。 如果将容器实例的状态更改为 DRAINING,则新任务不会置于
分类: 其他 发布时间: 10-06 20:17 阅读次数: 0

查看unity打来的包在手机上面查看日志

在开发过程中,我们经常遇到在unity里面写的代码在unity中跑的没有问题,但是在手机上面就会出现问题的情况,这时候就需要在手机上面查看日志,首先要下载AndroidStudio,在这个上面查看日志,刚下载下来是没有查看日志的选项的,首先先下载一个Android的模拟环境,在下载出来之后就会出现一个Logcat的选项,然后手机连上电脑打开开发者选项就可以实时查看日志啦,里面也有日志的分类,可以根据日志的重要程度来查看,也可以根据输入关键字查看。
分类: 其他 发布时间: 10-06 20:17 阅读次数: 0

python------------------异常处理 python------------------异常处理

python------------------异常处理 一、错误与异常 程序中难免会出现错误,而错误分为两种 1.语法错误:(这种错误,根本过不了python解释器的语法检测,必须在程序执行前就改正) 2.逻辑错误:(逻辑错误),比如用户输入的不合适等一系列错误 那什么是异常呢?   异常就是程序运行时发生错误的信号,在python中,错误触发的异常如下。异常发生之后,异常之后的代码就不执行了 异常种类:在python中不同的异常可以用不同的类型(python中统一了类与类型,类型即类)去标
分类: 其他 发布时间: 10-06 20:17 阅读次数: 0

CF52C Circular RMQ

题目链接 思路: 这道题其实还是普通的区间修改和查询问题,只不过序列变为了环形,所以就是小小的改一下就可以了。 分类讨论一下,如果输入的l<r,那么就是照常修改和查询。但由于是环形,所以会出现l>r的地方,其实也就是这样拆成l-n和1-r两个操作即可。 代码,不需要代码,太水了 #include<bits/stdc++.h> using namespace std; const int maxn=1e6+7; struct node{ int l,r; long lo
分类: 其他 发布时间: 10-06 20:17 阅读次数: 0

StringToKenizer和Scanner的区别

相同点:   StringToKenizer类和Scanner类都可用于分解字符序列中的单词! 不同点:   StringToKenizer类把分解出的全部字符串都存放到StringToKenizer对象的实体中,因此StringToKenizer对象能较快的读取字符串,但是会占用较多的内存(用空间换取速度)!   Scanner类则不把字符串放到Scanner对象的实体中,而是仅仅存放怎样获取单词的分隔标记,因此Scanner对象获取字符串的速度相对较慢,但是更节省内存空间(用速度换取空间)
分类: 其他 发布时间: 10-06 20:01 阅读次数: 0

Linux字符界面字符颜色显示

一、字符颜色 #!/bin/bash #字符颜色显示 #-e:允许echo使用转义 #\033[:开始位 #\033[0m:结束位 #\033等同于\e echo -e "\033[30m黑色字\033[0m" #(黑底在白色风格显示才明显) echo -e "\033[31m红色字\033[0m" echo -e "\033[32m绿色字\033[0m" echo -e "\033[33m黄色字\033[0m" echo -e "\033[34m蓝色字\033[0m" echo -e
分类: 其他 发布时间: 10-06 20:01 阅读次数: 0