自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

Peace

Frank

  • 博客(43)
  • 收藏
  • 关注

原创 Linux内存管理

Ref:https://www.cnblogs.com/ralap7/p/9184773.html

2019-03-31 23:02:54 140

原创 C语言volatile关键字

“不妨大胆一些,爱一个人,攀一座山,追一个梦。”----- 大鱼海棠volatile是一个类型修饰符(type specifier), 防止编译器对代码进行优化。volatile的变量是说这变量可能会被意想不到地改变,这样,编译器就不会去假设这个变量的值了。 volati...

2019-03-31 23:01:49 792

原创 ubuntu通过网线连接windows并借助windows上网

花的心藏在蕊中 空把花期都错过 你的泪晶莹剔透...

2019-03-31 17:15:47 10428 4

原创 C++11 智能指针学习-自己实现shared_ptr类

别人笑我太疯癫,我笑别人看不穿。--唐寅C++程序设计中使用堆内存是非常频繁的操作,堆内存的申请和释放都由程序员自己管理。程序员自己管理堆内存可以提高程序的效率,但是整体来说堆内存的管理是麻烦的,C++11中引入了智能指针的概念,方便管理堆内存。使用普通指针,...

2019-03-30 23:33:16 768

原创 c++ 成员函数指针 学习

指向类的成员函数的指针。 具体怎么声明,怎么用,全是设计c++的人规定的,记住拜,还能有什么办法。Ref:http://www.cnblogs.com/findumars/p/8742665.html https://www.cnblogs.com/lidabo/p/6639363.html ...

2019-03-28 21:24:21 134

原创 通过U盘安装系统时,BIOS启动项中找不到U盘选项 怎么办

最近安装Ubuntu系统,用ubuntu自带的制作自动盘的工具,Startup Disk Creator 做好了启动U盘之后(https://blog.csdn.net/yangzhongxuan/article/details/9465791),欲通过该U盘进行安装。开机时,长按esc进入bios设置界面,然后试图选择从U盘启动,但是,boot option下拉选项框中,不显示我插入的U盘...

2019-03-28 21:15:33 10272

原创 linux安装ssh和开启 ssh服务

人来到世间,不是来成功的,不是来创业的,是来体验的--- 马天行最近一年一直再ubuntu上鼓捣开发,通过ssh远程登陆系统是在所难免的。 SSH是系统的一项服务,需要在服务器上安装,开启,然后才能登陆上哦。下面这个blog曾帮助过我,在此贴上,源头:https://blog.csdn.net/java_...

2019-03-28 21:00:33 2431

原创 局部静态变量Static

(1) 静态局部变量在静态存储区内分配存储单元。在程序整个运行期间都不释放。而自动变量(即动态局部变量)属于动态存储类别,存储在动态存储区空间(而不是静态存储区空间),函数调用结束后即释放。(2) 为静态局部变量赋初值是在编译时进行值的,即只赋初值一次,在程序运行时它已有初值。以后每次调用函数时不再重新赋初值而只是保留上次函数调用结束时的 值。而为自动变量赋初值,不是在编译时进行的,而是在函数调...

2019-03-25 22:43:08 350

原创 Linux进程 -- 进程间通信的方式概述

Linux进程之间通信的方式:1. 管道(无名管道)管道是unix系统IPC的最古老的形式,所有unix系统都提供此种通信机制。管道的局限性: 只能在具有公共祖先的两个进程间使用。通常,一个管道由一个进程创建,在进程调用fork之后,这个管道就能在父进程和子进程之间使用了。2. FIFO(有名管道)有时称为命名管道,通过FIFO,不相关的进程也能交换数据。 FIFO是一...

2019-03-23 22:23:25 145

原创 Linux下setuid函数学习

内核为每个进程维护三个UID值:实际用户ID(real uid)、 有效用户ID(effective uid)、 保存的设置用户ID(saved set-user-ID)。实际用户ID和实际用户组ID:标识我是谁,也就是登录用户的uid和gid,比如我的Linux以fg登录,在Linux运行的所有的命令的实际用户ID都是fg的uid,实际用户组ID都是fg的gid(可以用id命令查看...

2019-03-20 21:57:13 669

原创 c++ 11的lambda表达式

C++11的一大亮点就是引入了Lambda表达式。利用Lambda表达式,可以方便的定义和创建匿名函数。对于C++这门语言来说来说,“Lambda表达式”或“匿名函数”这些概念听起来好像很深奥,但很多高级语言在很早以前就已经提供了Lambda表达式的功能,如C#,Python等。Lambda表达式就是匿名函数(annoymous function)——允许我们使用一个函数,但不需要给这个...

2019-03-20 21:29:44 178

原创 Linux logrotate配置 -- 自动压缩日志文件

日志文件包含了关于系统中发生的事件的有用信息,在排障过程中或者系统性能分析时经常被用到。对于忙碌的服务器,日志文件大小会增长极快,服务器会很快消耗磁盘空间,这成了个问题。除此之外,处理一个单个的庞大日志文件也常常是件十分棘手的事。logrotate是个十分有用的工具,它可以自动对日志进行截断(或轮循)、压缩以及删除旧的日志文件。配置完后,logrotate的运作完全自动化,不必进行任何进一步的...

2019-03-18 22:22:58 3165

原创 Linux线程同步:细说 互斥锁+条件变量

假设有多个线程共享的资源sum, 与之相关联的mutex 是lock_s. 假设每个线程对sum的操作很简单,与sum的状态无关,比如只是sum++. 那么只用mutex足够了. 程序员只要确保每个线程操作前,取得lock,然后sum++,再unlock即可. 每个线程的对sum的操作代码将像这样:add(){ pthread_mutex_lock(lock_s); ...

2019-03-18 22:03:01 230

原创 dmesg命令查看linux内核日志 -- 查看挂载的串口, USB

人生如逆旅,我亦是行人。--- 苏东坡dmesg命令显示linux内核的环形缓冲区信息,我们可以从中获得诸如系统架构、cpu、挂载的硬件,RAM等多个运行级别的大量的系统信息。当计算机启动时,系统内核(操作系统的核心部分)将会被加载到内存中。在加载的过程中会显示很多的信息,在这些信息中我...

2019-03-18 21:49:28 13774 1

原创 Kaggle手写数字识别 -- CNN

项目:https://www.kaggle.com/c/digit-recognizer 方法: 卷积神经网络CNN工具: tensorFlow;代码:导入工具包:import tensorflow as tfimport pandas as pdimport numpy as npimport pylab import matplotlib.pyplot as p...

2019-03-17 22:22:43 1472

原创 linux系统下的日志记录

Ref:https://blog.csdn.net/wangwenwen/article/details/8554907https://blog.51cto.com/dantanmingxin/1827823

2019-03-16 22:19:17 171

原创 MQTT(Message Queuing Telemetry Transport,消息队列遥测传输协议)

Ref:https://www.cnblogs.com/yangfengwu/p/7764667.html ----good!http://www.runoob.com/w3cnote/mqtt-intro.html

2019-03-16 22:15:13 2256

原创 C++ 单例模式

单例模式就是一个类只能被实例化一次 ,即,只能有一个对象的类。单例模式,可以说设计模式中最常应用的一种模式了,据说也是面试官最喜欢的题目。一般情况下,我们建立的一些类是属于工具性质的,(例如,模型的数学算法类,假设有1000个车辆对象,每个车辆对象中存储着赛车的基本参数,这些对象只用一个算法就可以),基本不用存储太多的跟自身有关的数据,在这种情况下,每次都去new一个对象,即增加了开...

2019-03-15 22:31:41 311

原创 linux网络编程 -- 服务器端的典型编程模型

近一年做了些linux服务端网络编程的项目,这里需要整理一下服务器端常见的编程模型。这片博文https://blog.csdn.net/qq_29108585/article/details/78177278 整理的思路比较清晰。另外,在经典书籍《Unix网络编程 卷1》第三版的第30章“客户/服务器程序设计范式”也对这方面做了比较完美的总结。模型1: 同步阻塞迭代模型(或简称 迭代模...

2019-03-13 23:25:46 260

原创 qt 3D初探 例子

官方文档:qt5.12:: https://doc.qt.io/qt-5/qt3d-index.html官方例子: https://doc.qt.io/qt-5/qt3d-examples.htmlBlog: https://blog.csdn.net/gamesdev/article/details/43964499 https://blog.csdn...

2019-03-13 22:03:29 1165 1

原创 面试c++ 友元函数---写一个程序,设计一个点类Point,求两个点之间的距离

类具有封装和隐藏的特性,只有类的成员函数才能访问类的私有成员,程序中的其他函数是无法访问私有成员的。非成员函数可以访问类中的公有成员,但是,如果将数据成员都定义为公有的,这又破坏了隐藏的特性。 另外,应该看到,在某些情况下,特别是在某些成员函数多次被调用时,由于参数传递、类型检查、安全检查等都需要时间开销,会影响程序的效率。为了解决上述问题,提出一种友元的方案。 友元函数是一种定义在...

2019-03-10 21:51:51 8014

转载 C++ explicit关键字详解

source: https://www.cnblogs.com/rednodel/p/9299251.html

2019-03-10 21:10:43 96

原创 C++ 之 const 限定符

相比于#define,在c++中还有更好的处理符号常量的方法,这种方法就是使用const关键字来修改变量声明和初始化。例如,假设需要一个表示一年中的月份的符号常量:const int MONTHS = 12;常量被初始化之后,其值就固定了,编译器不允许再修改该常量的值!! 如果在声明时没有提供值,则该常量的值将是不确定的,而且无法修改它。可以使用const常量定义数组维度:con...

2019-03-10 20:51:05 164

原创 面试: C++构造函数初始化列表

初始化列表的初始化顺序是根据 成员变量的声明顺序 来执行的。class base{public: base(int i):m_j(i),m_i(m_j){} base():m_j(0),m_i(m_j){} int get_i(){return m_i;} int get_j(){return m_j;}private: int m_...

2019-03-10 17:04:10 234

原创 C++ 之 静态成员

用关键字static声明的类成员。对于静态成员变量,无论创建了多少个类对象,程序都只创建一份静态成员变量,所有的对象共享类的静态成员变量。静态数据成员是静态存储的,静态成员变量在使用前必须初始化! 不能在类声明种初始化静态成员变量,这是因为声明描述了如何分配内存,但并不分配内存。需要在类声明之外,使用单独的语句来进行初始化。初始化语句需要指出类型,并使用域操作符,前面不加static...

2019-03-10 16:28:38 166

原创 面试: c++中 struct和class的区别

struct种也可以有 成员函数,构造函数,析构函数,之间也可以继承,可以实现多态等。不同的地方体现在两个方面:1. struct它默认的数据访问控制是public的,而class作为对象的实现体,它默认的成员变量访问控制是private。当然,对于访问控制,应该在程序里明确的指出,而不是依靠默认,这是一个良好的习惯,也让你的代码更具可读性。2. 默认的继承访问权限。struct是pub...

2019-03-10 15:40:03 274

原创 C++ 之 赋值函数(操作符)

c++允许类对象之间赋值,这是通过自动为类重载赋值操作符实现的。这种操作符地原型如下:className & className::operator = (const className &); 入参和返回值都是 指向类对象地引用。当 将一个已经存在的对象赋给另一个对象时,将使用重载的赋值操作符。赋值操作符并不创建新的对象。例如:StringBad ob...

2019-03-10 12:06:13 1795

原创 C++之 拷贝(复制)构造函数

复制构造函数用于将一个对象复制到新创建的对象中。它用于初始化的过程,而不是常规的赋值过程中。类的复制构造函数的原型通常如下:ClassName (const ClassName &); 没有返回值,函数名字同类名。接受一个 指向类对象的引用常量 作为入参。1. 何时调用复制构造函数:(1)新建一个对象 并 将其初始化为同类现有对象时,复制构造函数将被调用。假设motto是一...

2019-03-10 11:26:16 376

原创 面试 - C++中的空类会产生哪些类成员函数

例如,如下的一个空类:class Empty{ public:};对于一个类,编译器默认产生如下成员函数:1)默认构造函数, 如果没有定义 ---- https://blog.csdn.net/qq_35865125/article/details/88372791 2)默认析构函数, 如果没有定义 --- https://blog.csdn.net/qq_...

2019-03-09 23:24:00 383

原创 C++ 之 默认构造函数

定义类时,如果没有提供任何构造函数,C++将创建默认构造函数。例如,假设创建了一个Klunk类,但没有提供任何构造函数,编译器将提供 如下的默认构造函数:Klunk::Klunk() { }也就是说,编译器将提供一个不接受任何参数,也不执行任何操作的构造函数,这是因为创建对象时总会调用构造函数。即“默认构造函数”这个术语对应的是 不接受任何参数,也不执行任何操作的构造函数。如果定...

2019-03-09 23:23:22 371

原创 排序算法们

1. 快速排序算法描述快速排序使用分治法来把一个串(list)分为两个子串(sub-lists)。具体算法描述如下:1)从数列中挑出一个元素,称为 “基准”(pivot);2)重新排序数列,所有元素比基准值小的摆放在基准前面,所有元素比基准值大的摆在基准的后面(相同的数可以到任一边)。在这个分区退出之后,该基准就处于数列的中间位置。这个称为分区(partition)操作;3)...

2019-03-09 11:30:31 197

原创 c++的 析构函数 整理

用类的构造函数创建对象后,程序负责跟踪该对象,直到其过期为止。对象过期时,一个特殊的类成员函数会被调用,该函数的名字令人怕怕---析构函数。析构函数主要用来完成清理工作,很有用。例如,如果在构造函数中使用了new来分配了内存,则析构函数中需要使用delete来释放这些内存。如果你定义类时,没有定义析构函数,那么编译器会自动地生成一个默认析构函数。析构函数的名字很特殊: ~类名 ,...

2019-03-07 23:25:29 198

原创 软件设计艺术大师基本功--掷色子n次求和为sum的概率

概率:掷筛子求和, 递归,分解成子问题是面试中经常考察的问题,多看看leetcode对面试者有好处。有一个筛子,每投一次的结果可能是1,2,3,4,5,6,每种出现的结果相同。现在给定投掷的次数n,求n次之和是sum的概率为多少。解析:可以拆分成子问题,然后用递归的方式解决。从最简单的开始分析:n=1,sum=3, 则P(n,sum) = P(1,3)= 1/6;n...

2019-03-07 22:44:23 470

原创 自己用C++写一个发布者订阅者模式

突然想整理一下自己用过的这个模式,半小时写下了这些代码。首先定义两个基类,class notifier(发布者) 和 class receiver(订阅者)。在发布者类中有成员 std::vector<receiver*> observerList,该vector用于存储订阅者对象,当发布者需要发布消息时,消息会被发送给vector中所有的订阅者对象。在订阅者类中定义...

2019-03-07 22:40:17 4288 2

转载 Windows下用Anaconda安装TensorFlow,并在pycharm中使用

Ref:https://blog.csdn.net/u012052268/article/details/742024391.安装Anaconda选择相应的Anaconda进行安装,下载地址https://www.anaconda.com/distribution/ ,下载对应系统版本的Anaconda。就和安装普通的软件一样,全部选择默认即可,注意勾选将pytho添加进环境变...

2019-03-07 21:31:56 358

原创 c++虚函数 ,多态

source:https://blog.csdn.net/haoel/article/details/1948051C++中的虚函数的作用主要是实现了多态的机制。关于多态,简而言之就是用父类型别的指针指向其子类的实例,然后通过父类的指针调用实际子类的成员函数。这种技术可以让父类的指针有“多种形态”,这是一种泛型技术。所谓泛型技术,说白了就是试图使用不变的代码来实现可变的算法。比如:模板技...

2019-03-06 21:20:52 220

原创 天池平台 --- 工业AI大赛智能制造质量预测

赛题:https://tianchi.aliyun.com/competition/entrance/231633/information基于Python的解决方案:原始jupyter文件,网盘: 链接:https://pan.baidu.com/s/1guIwAlk9zvI3ULcZ8kkBnw 提取码:g0xs主要关注数据处理的方法,神经网络建立的方法,逻辑次要。相关工具包:...

2019-03-05 23:31:57 2848 9

转载 关于Ubuntu运行级别、开机启动脚本

source: https://www.cnblogs.com/hbhzsysutengfei/p/ubuntu-runlevel-autostart-service.html目录简介1.1介绍Ubuntu下面的自启动脚本目录1.2 Linux操作系统运行级别的概念1.3关于操作系统自启脚本的启动顺序1.4 Linux操作系统运行级别的概念1.5 自启和关闭自启服务...

2019-03-04 22:48:27 1780

转载 ubuntu设置开机启动图形应用程序,替换默认图形桌面

source: https://blog.csdn.net/liebergott/article/details/7793408 一、前言无论你想要在ubuntu 12.04(11.10适用)开机启动图形程序,或者非图形程序,相信这篇文章能帮上大忙。我将根据我的需求讲解我的做法,并解释为什么这么做。完了以后,各位看官根据自己的需求不加修改或稍加修改即可适用。我这边,总得来说,需求是做一...

2019-03-04 22:38:40 3702

转载 机器学习之异常点检测算法

https://www.cnblogs.com/pinard/p/9314198.html

2019-03-02 22:39:24 957

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除