盐焗咸鱼
码龄9年
关注
提问 私信
  • 博客:223,455
    223,455
    总访问量
  • 57
    原创
  • 360,115
    排名
  • 41
    粉丝
  • 0
    铁粉
IP属地以运营商信息为准,境内显示到省(区、市),境外显示到国家(地区)
IP 属地:安徽省
  • 加入CSDN时间: 2015-12-01
博客简介:

qq_33215865的博客

查看详细资料
个人成就
  • 获得105次点赞
  • 内容获得23次评论
  • 获得415次收藏
  • 代码片获得237次分享
创作历程
  • 49篇
    2019年
  • 9篇
    2018年
成就勋章
TA的专栏
  • Linux
    15篇
  • Gentoo
    6篇
  • C++
    27篇
  • shell
    3篇
  • 面试整理
    3篇
  • 软件配置
    1篇
  • ArchLinux
    4篇
  • 设计模式
    5篇
兴趣领域 设置
  • 大数据
    redis
  • 后端
    架构
  • 服务器
    linux
创作活动更多

HarmonyOS开发者社区有奖征文来啦!

用文字记录下您与HarmonyOS的故事。参与活动,还有机会赢奖,快来加入我们吧!

0人参与 去创作
  • 最近
  • 文章
  • 代码仓
  • 资源
  • 问答
  • 帖子
  • 视频
  • 课程
  • 关注/订阅/互动
  • 收藏
搜TA的内容
搜索 取消

ArchLinux更新遇到错误

问题: 错误:无法提交处理 (有冲突的文件) libbloom: 文件系统中已存在 /usr/lib/libbloom.so.1 发生错误,没有软件包被更新。 Error installing repo packages解决: sudo pacman -Syu --ig...
原创
发布博客 2019.07.30 ·
2959 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

C++ 链接时提示类的静态变量未定义,“undefined reference to”错误

今天在工程中写了一个单例,但是调用时,总是报静态变量未定义的错误。// A.hclass FWindowsLoader : public FPhysicalLoader{private: FWindowsLoader(){} static FWindowsLoader* singleFWindowsLoader;public: static FWindowsL...
原创
发布博客 2019.07.09 ·
6947 阅读 ·
13 点赞 ·
2 评论 ·
12 收藏

Head First 设计模式详解之五:单例模式

单例模式确保一个类只有一个实例,并提供一个全局的访问点。单例模式用于全局只需要一个对象的时候,例如线程池,缓存,对话框,注册表等等。单例模式的实现要实现一个单例模式很容易,只需要将构造函数设置为private就可以阻止类的实例化。然后我们创建一个接口,所有对单例模式对象的获取都要通过唯一的获取接口。class Singleton{private: Singleton...
原创
发布博客 2019.06.28 ·
330 阅读 ·
1 点赞 ·
0 评论 ·
0 收藏

Head First 设计模式详解之四:工厂模式

工厂方法模式定义一个创建对象的接口,但是由子类决定实例化的类是哪一个。工厂方法让类的实例化推迟到子类。也就是说,我们从基类Base中派生出对象A和B,并且定义Factory,派生出FactoryA和FaceoryB,分别用来生成对象A和B的实例,FactoryA和FactoryB就仿佛是一个工厂,标准地使A和B实例化。使用者将不用关心对象创建,实现使用者与具体类之间的解耦。举个例子...
原创
发布博客 2019.06.27 ·
207 阅读 ·
1 点赞 ·
0 评论 ·
0 收藏

Head First 设计模式详解之三:装饰者模式

什么是装饰者模式装饰者模式动态地将责任附加到对象上。当需要扩展时,装饰者能提供比继承能有弹性的替代方案。当我们需要动态地添加一些功能时,可以使用装饰者模式。举个例子装饰者模式通过创建一个Component基类,然后让装饰者和被装饰者都继承这个基类。并在装饰者只中声明一哥被装饰者变量,从而识别要装饰的对象,并在自己的方法中,对被装饰者的方法进行功能添加。现在我们有许多种咖啡,需要...
原创
发布博客 2019.06.26 ·
221 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

Head First 设计模式详解之二:观察者模式

什么是观察者模式对象之间存在一对多的关系,当一个对象状态发生改变时,会通知其他依赖的对象,并使他们自动更新。举个例子我们有一个气象站,并拥有多个种类展示板。当气象站检测到的气象数据发生改变时,展示板也进行相应的改变。我们可以维护一个动态数组,将所有的依赖对象放到里面,状态更新函数update由依赖的类实现。当我们状态发生改变时,只要一一调用数组中的对象的update函数。为此,被依...
原创
发布博客 2019.06.25 ·
146 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

Head First 设计模式详解之一:策略模式

本文为Head First设计模式笔记。什么是策略模式策略模式是将应用中实现方法多变的算法独立出来,封装为算法族,通过组合或者其他方式,让算法的调用切换独立于算法的调用者。举个例子我们要设计一个duck鸭子类。我们首先想到设计一个duck基类,然后派生出各种各样的鸭子。class Duck{ virtual void display(); virtual ...
原创
发布博客 2019.06.25 ·
209 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

ArchLinux图形界面安装与美化:i3+polybar

arch只提供了tty,我们需要自己配置一个漂亮的桌面。你可以选择继承好的GNOME、Deepin等桌面。但是他们都包含了许多你可能并不能用到的工具和插件。i3wm是一个窗口管理器,它提供了最基础的窗口管理功能。你可以根据自己的需要进行配置,把系统运行的每一个程序都掌握在自己手里。效果图如下:需要安装:i3wm:窗口管理器feh:设置桌面compton:窗口透明化polyb...
原创
发布博客 2019.05.19 ·
38353 阅读 ·
7 点赞 ·
0 评论 ·
76 收藏

Archlinux安装过程指南

ArchLinux十分精简,并且具有强大的滚动更新。最近安装了下arch,记录下过程,为以后的安装提供参考。1、制作启动盘1.1、下载arch镜像文件到https://www.archlinux.org/download/页面,寻找中国镜像源下载archlinux-**-x86_64.ios镜像文件2.2、制作U盘启动盘软碟通UltraISO制作的启动盘无法启动,读取时找不到相...
原创
发布博客 2019.05.10 ·
8526 阅读 ·
2 点赞 ·
0 评论 ·
19 收藏

解决VirtualBox共享粘贴板功能无效问题

1、开启共享粘贴板和拖放功能首先我们要开启Virtual Box的共享剪切板功能。在控制 -> 设置 -> 常规 -> 高级中,勾选共享粘贴板和拖放功能。2、开启共享粘贴板后仍无法共享解决办法我的虚拟机在勾选后仍然没有办法启用共享粘贴板。下面介绍解决方法。2.1、安装virtualBox增强功能点击 设备 -> 安装增强功能此时在你的虚拟机...
原创
发布博客 2019.03.30 ·
29715 阅读 ·
11 点赞 ·
10 评论 ·
41 收藏

后台开发面试整理之计算机网络

Q:三次握手和四次握手的状态变化Q:udp和tcp的最大长度udp中用2个字节来记录报文程度大小,即65535个字节(64k)。但是由于ipv4报文允许的报文长定为65535个字节,所以单片能发送的最大长度为65535-20(ip首部)-8(upd首部)=65507字节。在实际应用中,用UDP协议发送时,用sendto函数最大能发送数据的长度为:65535-20(ip首部)-8(u...
原创
发布博客 2019.03.24 ·
438 阅读 ·
0 点赞 ·
0 评论 ·
2 收藏

后台开发面试整理之C++

Q:字节对齐对于一些平台,特定的数据类型只能从特定的地址进行读取,随意防止将导致错误。而更一般的情况是,如果不按照规定存放数据,将会造成读写效率上的损耗。比如32位的Intel处理器通过总线访问(包括读和写)内存数据。每个总线周期从偶地址开始访问32位内存数据,内存数据以字节为单位存放。如果一个32位的数据没有存放在4字节整除的内存地址处,那么处理器就需要2个总线周期对其进行访问,显然访问效率...
原创
发布博客 2019.03.24 ·
171 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

后台开发面试整理之数据库常见面试题

转载自:https://zhuanlan.zhihu.com/p/23713529(一)什么是存储过程?有哪些优缺点?存储过程是一些预编译的SQL语句。更加直白的理解:存储过程可以说是一个记录集,它是由一些T-SQL语句组成的代码块,这些T-SQL语句代码像一个方法一样实现一些功能(对单表或多表的增删改查),然后再给这个代码块取一个名字,在用到这个功能的时候调用他就行了。...
转载
发布博客 2019.03.24 ·
1408 阅读 ·
5 点赞 ·
0 评论 ·
28 收藏

Linux下打开word等office文件(openoffice安装)

office并没有Linux版本。 但是,linux平台下也提供了许多可以打开word等文件的软件。当初尝试使用了国产的永中office。其的确提供了office基本所有的常用功能,但是他会自动替换系统中的字体,使得原来本来能正常显示的中文反而不能显示。也许是我的设置方式不对,修改字体顺序无果后,只能忍痛卸载。今天介绍名为OpenOffice的一款软件。OpenOffice也是现在linu...
原创
发布博客 2019.03.21 ·
22166 阅读 ·
8 点赞 ·
3 评论 ·
55 收藏

CPU实现原子操作的方法

在学习并发编程时,我们知道,多条指令不被分割操作被成为原子操作。但是,对于CPU是如何保证原子性的呢。1、对于单核CPU对于单核cpu,所有的事件都是串行,执行完第一才会去执行第二个。所以,单核CPU实现原子操作比较简单。在单核CPU中,每个指令都保证是原子的,即中断只会在指令之间发生。Intel x86指令集支持内存操作数的inc操作,将多条指令的操作在一条指令内完成。因为进程的上下...
原创
发布博客 2019.03.14 ·
2501 阅读 ·
0 点赞 ·
1 评论 ·
5 收藏

linux系统编程(五):目录操作(opendir、readdir、closedir、stat)

1、ls的作用ls命令主要用与输出目录相关的信息。包括当前目录包含的文件,文件的模式,所属,大小等等。2、相关系统调用2.1、打开一个目录opendir opendir 目标 根据目录名打开目录 头文件 #include <sys/types.h> #include <dirent.h> 函数原型 DIR *ope...
原创
发布博客 2019.03.13 ·
1616 阅读 ·
2 点赞 ·
0 评论 ·
3 收藏

虚函数的工作原理与类的大小

1、虚函数的作用虚函数通过动态联编技术,使程序运行时选择正确的虚方法。使用虚函数,会根据对象的类型来调用函数,而不是根据指针类型。#include<iostream>using namespace std;class A{public: A(){} virtual void show(){ cout << "this is A show" &lt...
原创
发布博客 2019.03.12 ·
411 阅读 ·
1 点赞 ·
0 评论 ·
1 收藏

linux修改键位:ctrl与caps调换

ctrl比caps的使用频率更高,但是ctrl的位置却对小拇指并不友好。有时使用gnome-tweak-tool设置键位并没有生效。下面介绍两个简单的方法修改键位。1、使用xmodmap修改键位我们可以使用包管理器轻松安装xmodmap。之后我们需要编写键位的配置文件。remove Lock = Caps_Lockremove Control = Control_Lkeysym ...
原创
发布博客 2019.03.10 ·
3582 阅读 ·
1 点赞 ·
0 评论 ·
3 收藏

linux系统编程(四):修改文件读取指针(lseek)

1、用户注销过程用户注销过程总共包括4步:1、打开utmp文件2、在文件中找到你所在终端的登录记录3、对当前记录做修改4、关闭文件但是,对于write或者read系统调用,都只能顺序读取,或者顺序写入,没有办法读出个一个数据,然后再回头修改它。这时,我们需要使用lseek系统调用来改变当前打开文件的指针位置。指针是与文件描述符相关联的,而不是文件关联,所以如果同一个文件...
原创
发布博客 2019.03.08 ·
1449 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

linux系统编程(三):使用缓冲提高I/O效率

1、频繁的系统调用将降低效率用户进程运行在用户控件,而磁盘只能被内核直接访问。当执行系统调用时,需要在内核中执行代码。系统调用的开销不仅仅是因为数据的传输。当运行内核代码时,CPU需要切换到超级用户模式,需要建立额外的堆栈和内存环境,执行完系统调用时,CPU要切换回用户模式,把堆栈和内存环境还原为原来的用户模式运行状态。这种频繁的用户态和内核态切换将消耗更多的时间。为了提高I/O的效率,我...
原创
发布博客 2019.03.08 ·
409 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏
加载更多