自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(56)
  • 资源 (7)
  • 收藏
  • 关注

原创 C++实现根据字符串创建对象

使用std::map容器实现根据字符串创建对象

2022-02-08 10:01:25 1141 1

原创 CRC16 Modbus C代码实现

CRC16 多项式x16+x15+x2+1 对应十六进制0xA0011unsigned short crc16Cal( unsigned char const* pStr, unsigned char length ){ unsigned int crcValue = 0xFFFF; for ( unsigned char index = 0; index < length; index++ ) { crcValue = crcValue ^ *.

2021-11-01 10:32:49 283

原创 标准C库源码地址

The GNU C Libraryhttps://www.gnu.org/software/libc/newlib C库源码The Newlib Homepage (sourceware.org)https://sourceware.org/newlib/

2021-09-17 15:10:45 2199

原创 Qt for MCU+vs2019提示Unexpected compiler version

将C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\Llvm\bin\libclang.dll

2021-06-01 10:27:28 505

原创 Qt 编译 MySQL

首先你要有Qt的源码,如果安装Qt的时候没有安装源码需要从http://download.qt.io/archive/qt下载对应版本single目录下的源码。然后从https://downloads.mysql.com/archives/community/下载mysql的库文件。一:打开mysql.pro项目 我的路径是:E:\Qt\Qt5.13.2\5.13.2\Src\qt...

2020-04-09 19:14:41 279

原创 关闭谷歌chrome,"Chrome未正确关闭,是否恢复页面"的提示

C:\Users\userName\AppData\Local\Google\Chrome\User Data\Default修改Preference文件中的exit_type的值为Normal, exited_cleanly:true, 保存退出然后修改Preferrence文件的属性为只读命令行启动方法:--incognito 以隐身模式启动...

2019-08-21 10:48:43 10116

原创 QT release模式,qDebug输出到日志文件

包含头文件#include <stdafx.h>main函数的QApplication app(argc, argv);下面加入installMessageHandler();#ifndef STDAFX_H#define STDAFX_H#include <QByteArray>#include <cstdio>#include <Q...

2019-07-30 11:06:59 2756 1

原创 ubuntu 安装qt,配置环境变量

Qt安装后qmake命令还不能直接使用,需要将Qt的bin目录添加到Path中:第一种;添加到/etc/profile,这种方式作用于系统中的所有用户执行命令: vi /etc/profile,在末尾插入如下内容:export QTDIR=/opt/Qt5.12.3/5.12.3export PATH=$QTDIR/gcc_64/bin:$PATHexport LD_LIBRARY_...

2019-07-17 16:48:05 5976

翻译 分享cygwin 安装 ffmpeg

源:http://www.mediaentertainmentinfo.com/2014/01/1-technical-series-how-to-compile-ffmpeg-under-cygwin.html/

2019-07-02 09:53:22 770

翻译 分享一个ubuntu 安装ffmpeg的脚本

源:https://gist.github.com/sparrc/026ed9958502072dda749ba4e5879ee3#!/usr/bin/env bash# Installs ffmpeg from source (HEAD) with libaom and libx265, as well as a few# other common libraries# bina...

2019-07-02 09:46:31 368

原创 ffmpeg4.1.3 rgb转yuv

https://blog.csdn.net/asahinokawa/article/details/80596655 YUV存储格式// QImage 的构造:QImage image(rgb_buffer, 1920, 1080, QImage::Format_RGB32);void writeRGB32BufferToYuv420P(QImage& image){ ...

2019-06-28 17:07:33 380

原创 cmake vs2017

选择命令工具cmd窗口64位: cmake -G "Visual Studio 15 2017 Win64" -S 源码路径 -B 构建目录32位:cmake -G "Visual Studio 15 2017" -S 源码路径 -B 构建目录

2019-06-28 15:10:20 936

翻译 cygwin使用apt-cyg

原文:https://www.imooc.com/article/247113新建文件apt-cyg,写入下面内容#!/bin/bash# apt-cyg: install tool for Cygwin similar to debian apt-get## The MIT License (MIT)## Copyright (c) 2013 Trans-code Desig...

2019-06-27 14:42:58 971

转载 程序Locale与字符集通透讲解

转载原文地址https://www.cnblogs.com/dolphi/p/3622439.html ,本文对转载文章做个排版。locale是国际化与本土化过程中的一个非常重要的概念,个人认为,对于中文用户来说,通常会涉及到的国际化或者本土化,大致包含三个方面: 看中文,写中文,与 window中文系统的兼容和通信。 从实际经验上看来,locale的设定与看中文关系不大,但是...

2019-05-14 22:41:32 641

翻译 C++ shared_ptr

允许多个shared_ptr对象通过引用计数器管理同一块堆内存。堆内存释放条件: 引用计数器为0时,在shared_ptr析构函数中释放堆内存 调用成员函数operator=或者reset被其他指针替代时线程安全性: shared_ptr并不是所有的操作都是线程安全的,访问非const函数依然会发生数据竞争。 C++11提供了std:atomic_is_lock...

2019-05-11 19:53:24 775

原创 C++声明数组模板

template<typename T, size_t N>struct StructArr{};// 使用形式: StructArr<int[],2>template<typename T,size_t N>struct StructArr<T[],N>{ static const int Length = N;};//...

2019-05-11 12:22:18 1062

翻译 std::remove_extent返回数组降低一个维度后的数据类型, std::rank返回数组维度, std::extent返回数组第一个维度的长度

std::remove_extent返回数组降低一个维度后的数据类型。不改变数据类型的限制属性(const, volatile, const volatile)一维数组降低到0维度;二维数组降低到一维数组;三维数组降低到二维数组;std::extent返回数组第一个维度的长度std::remove_all_extents返回数组的实际类型, int[] -> ...

2019-05-10 23:33:05 1494

原创 C++全局operator重载替换友元operator

class Data{public: explicit Data(int val):m_val(val) { } const int getVal() const { return this->m_val; }private: int m_val;};// 重载全局operator==, 不用直接访问Da...

2019-05-09 19:54:49 571

原创 #define 函数重载

利用#define达到函数重载的目的通常和编译选项gcc/g++-D相关#define CALL(name) call_##name()void call_one(){ cout<<"call_one()"<<endl;}void call_two(){ cout<<"call_two()"<<endl;}v...

2019-05-09 19:03:28 745

原创 C++11 constexpr

使用constexpr关键字的变量和函数要求程序在编译期间就知道变量的实际数值和函数的实际返回值并且是而不是在程序运行期间才知道实际数值。而且constexpr语句当中涉及的变量都是const属性的。constexpr比const要求更严格,const可以接受在程序运行期间赋值。constexpr变量:constexpr int conVal = 12; // 等同 const in...

2019-05-09 18:00:20 148

翻译 C++ 非const成员函数调用const成员函数的重载版本

在C++中void func() const 和void func()可以形成重载函数,如果void func() const和void func()写同样的代码实现func功能,这样就造成了代码浪费(重复写代码)。这种问题的解决方式就是利用static_cast达到代码复用的目的(重复利用代码)。下面给出一个转换过程:// 实例只是为了讲述转换过程class TestBlock{...

2019-05-09 16:04:27 904

原创 c++ vector造成的内存泄漏

C++中的std::list, std::array, std::queue, std::map, std::set, std::vector, std::forward_list, std::multiset, std::multimap, std::stack, std::unorderd_map, std::unorderd_multimap, std::unorderd_set, std:...

2019-05-07 00:44:26 5063

原创 C++模板的几种写法

常规:tempate<class T>struct SName1{// statement};template<typename T>struct SName2{// statement};// 函数模板template<typename>void func(const T&){// statement}// ...

2019-05-05 22:53:59 1039

翻译 C++11 NullablePointer

1、一种类似于指针的类,可以和std::nullptr_t对象比较2、满足: 相等比较(operator==) 默认构造 copy构造 copy赋值 析构 可以作为bool条件表达式使用。空值返回false,否则返回true 不抛出异常class nullPointer final{public: nullPointer(con...

2019-05-05 01:41:04 232

原创 QML Qt.binding

Qt.bindding的执行由QML引擎监控,一旦满足绑定条件就会响应。第一种:为属性绑定一段代码Rectangle{ implicitWidth: 300; implicitHeight: 200; TextField { id: control1; implicitWidth: p...

2019-05-04 12:54:57 2395 1

原创 Qt C++加载qml的两种方式

一:qml的根节点是Item的可见派生类#include <QGuiApplication>#include <QQuickView>int main(int argc, char** argv){ QGuiApplication app(argc, argv); QQuickView viewer; viewer.setResizeM...

2019-05-03 11:39:17 2493

原创 如何理解深拷贝和浅拷贝

首先我们先记住一个结论:编译器自动生成的拷贝构造和赋值运算符是memcpy的一个过程。实例过程以结构体代替,在c++中struct和class除了默认访问权限基本等同。struct TestStruct1{ int arr[3]; int a;};int main(){ TestStruct1 oneVar; oneVar.arr[0]=1; ...

2019-04-30 23:06:37 342

原创 c++11 lambda表达式

lambda形式: [capture list](param list)->return_type { body } capture list: 捕获列表,只能是当前lambda表达式所在函数体的局部变量名,直接在body块使用。 param list : 函数参数,传参 return_type : 函数返回值类型,如果body只有一句return语句编译器可以自动...

2019-04-23 14:43:36 101

翻译 std::move,std::forward;std::remove_reference

/** 引用折叠* A& & 折叠成 A&* A& && 折叠成 A&* A&& & 折叠成 A&* A&& && 折叠成 A&&*/template<class _Ty>struct remove_reference{...

2019-04-22 23:52:50 616

原创 C++模板的声明与实现分离的方式

第一种方式:头文件声明模板,源文件实现模板,头文件末尾include源文件#pragma once// 类模板template<typename T>class TestClass{public: TestClass(const T&); void printFunc();};// 函数模板template<typename T&g...

2019-04-22 22:51:01 752

原创 C++间接释放内存造成野指针解决方法

// 考虑这种情况:通过指针赋值释放掉内存,再去解引用原始指针会怎么样int main(){ int* ptr = new int(1); int* pint = ptr; delete pint; pint = nullptr; if (ptr) { cout<<*ptr<<endl; // 使用野指针,其结果是不明确的...

2019-04-20 11:48:05 285

翻译 linux extern char** envrion

#include <stdio.h>extern char** environ;int main(int argc, char** argv){ unsigned int index=0; while(argv[index]) { printf("argv[%u]:%s, %p\n", index, argv[index], argv[i...

2019-04-14 10:27:55 710

原创 sizeof全面解析

sizeof: 计算变量或者类型的内存占用字节数。是运算符而不是函数。在编译期完成类型或者表达式的内存大小结果。sizeof(指针)在32位系统=4;在64位系统=8.sizeof不能求void类型的长度 sizeof可以求得void*的长度,按指针处理 sizeof可以求得静态分配内存的数组大小,在非堆区开辟内存的数组大小 sizeof不可以求动态分配内存的大小 sizeof在计...

2019-04-14 01:45:29 262

原创 单链表逆转

方法一: 本地逆转void localReverse(Node* head){ Node* pCur = head->next; Node* pNext = head->next->next; pCur->next = nullptr; pCur = pNext; while(pCur) { ...

2019-04-13 11:08:46 349

转载 visual studio 版本的Qt Creator找不到CBD调试器

转载于:https://blog.csdn.net/suima0v0/article/details/50973861第一种情况:第二种情况:Qt Creator->Tools->Options->Kits->Kits中的auto-detected部分带有黄色警告标识,提示No debuger set up在https://docs.microsoft....

2019-04-10 23:32:39 1544

原创 C++字符串比较

字符串的比较不完全是字符串长度的比较:1、首先是逐个字符的ASCII值的比较至到某个字符的ASCII值不一致或者其中一个字符串到达字符串末尾{ "abcd"与"ba"比较,"ba"大,因为"ba"的字符'b'比"abcd"的字符'a'的ASCII值大}2、如果字符串的前n个字符都一样就比较字符串长度,长度长的字符串大{ "abc"与"abcd"比较,"abcd"大。前三个字符的...

2019-04-10 10:10:05 3108

原创 C# 属性窗口 分层

Visual Studio 2013 视图->其他窗口->文档大纲在文档大纲可以查看控件之间的层次结构

2019-03-27 15:02:16 479

原创 C++11 字符串与数字的转化

数字到字符串:内部调用sprintf()函数std::string to_string( int value );std::string to_string( long value );std::string to_string( long long value );std::string to_string( unsigned value );std::string to_stri...

2019-03-27 11:31:37 720

原创 C++ auto类型推导注意事项

auto只能推导出数据的不加const,不加引用(&)的数据类型int ia = 12;auto aa1 = ia; // 此时aa的类型是int,相当于int aa = ia;int& ra = ia;auto aa2 = ra; // 我们希望aa2的类型是int&, 实际上aa2的类型是int。如果是class或者struct类型型,这里会调用copy...

2019-03-27 10:50:27 737

原创 多线程中的单例模式-C++

示例中使用模板创建单例对象,实际操作过程中换成具体类中实现。注意要求单例模式的类要把构造隐藏。#include <iostream>#include <mutex>using namespace std;mutex g_single_mutex;#define sync(action) g_single_mutex.lock(); action; g_sin...

2019-03-21 13:58:55 521

Java1.6版本源码

学习Java源码的实现,加深对Java的理解。 Java源码覆盖了Java本身附加的Java包的实现方式。

2018-01-31

46家名企笔试题

华为、联想、索尼、大唐电信招聘的程序员笔试题

2015-01-03

Shell脚本学习指南

Linux/Unix下Shell脚本程序的编写的指导性书籍,适合初学Shell脚本的人

2014-10-22

QT4开发实践

QT图形化界面编程必备教程,包含源代码、实例分析。

2014-10-22

Oracle 11g Pro C/C++编程艺术

Oracle ProcC/C++编程连接数据库、使用数据库

2014-10-22

精通WindowsAPI-函数、接口、编程实例

Windows API分类、文件系统管理、内存管理、图形化界面设计

2014-10-22

蓝桥杯历年试题

蓝桥杯历年试题及答案(c语言) 2010第一届C语言初赛题目 2010选拔试题 2011第二届C语言初赛试题 全国软件专业人才设计与开发大赛C语言样题 含解析

2013-11-16

空空如也

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

TA关注的人

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