自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(57)
  • 资源 (6)
  • 收藏
  • 关注

转载 C++ const常量在多文件编程中的3种用法

首先介绍一种最常用也最简单的方法,就是将const常量定义在.h文件中。显然此方式违背了“声明位于 .h 文件,定义(实现)位于 .cpp 文件”的规律。在 C++ 多文件编程中,还有 2 种特殊情况是违背此规律的,分别是类的定义和内联函数的定义,通常情况下它们也都定义在 .h 文件中。举个例子(实例一):123456789101112//demo.hconstintnum = 10;

2023-11-13 16:11:44 405

原创 【C++】错误 C4996 ‘localtime‘:This function or variable may be unsafe.

严重性 代码 说明 项目 文件 行 禁止显示状态错误 C4996 'localtime': This function or variable may be unsafe. Consider using localtime_s instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. See online help for details. MyCardTest d:\mycardtest\mycardtest\mycontrolcard.

2022-05-18 11:47:13 10773 7

原创 【MATLAB】将.txt文件数据导入MATLAB中并绘图

如何将txt文件数据导入MATLAB中并绘图

2022-05-05 11:15:12 22104 3

转载 (转)Visual Studio 2017在编译时出现错误E2512:功能测试宏的参数必须是简单标识符

Visual Studio 2017在编译时出现错误E2512:功能测试宏的参数必须是简单标识符问题描述Visual Studio 2017在编译时出现错误E2512:功能测试宏的参数必须是简单标识符,如下图:解决方案:点击下图红色剪头按钮,弹出如下选项:选择“仅生成”,然后清理,重新生成即可。“生成+IntelliSense”是说:Visual Studio的IntelliSense功能类似其他IDE中的auto-completion,也就是能够自动补全。对于我来说只要

2022-03-17 09:34:55 2951

原创 TwinCAT3 Ads error: 4115

Error 15 27/01/2015 23:23:48 551 ms | 'TwinCAT System' (10000): Sending ams command >> Init4\RTime: Start Interrupt: Ticker started >> Ads error: 4115 (0x1013, RTIME: system clock setup fails.Hint: On Windows8 system execute win8settick.bat i

2021-12-24 22:38:59 5576

原创 【Cmake】在Windows下用Cmake构建C++工程项目——如何使用外部共享库和头文件——4

一. 准备工作1)在D:\vs_test\cmake_test目录下,新建t3文件夹;2)在t4下,新建目录lib、src、build和文件CMakeLists.txt。src是用来存放源文件的。lib存放库3)在目录src下,新建CMakeLists.txt和main.cpp。4)将上一节生成的两个库文件hello.lib和hello.dll放入目录lib下t4/CMakeLists.txt 内容:PROJECT(NEWHELLO)ADD_SUBDIRECTORY(src bin

2021-08-26 11:23:24 642

原创 【Cmake】在Windows下用Cmake构建C++工程项目——构建静态库与动态库——3

一. 准备工作1)在D:\vs_test\cmake_test目录下,新建t3文件夹;2)在t3下,新建目录lib、build和文件CMakeLists.txt。lib是用来存放源文件的。3)在目录lib下,新建CMakeLists.txt和hello.cpp、hello.h。t3目录下的CMakeLists.txt 文件内容:PROJECT(HELLOLIB)ADD_SUBDIRECTORY(lib bin)lib/CMakeList.txt 内容:SET(LIB..

2021-08-25 17:34:49 1422

原创 【Cmake】在Windows下用Cmake构建C++工程项目——更好一点的Hello World——2

1. 准备工作1)在D:\vs_test\cmake_test目录下,新建t2文件夹;2)在t2下,新建目录src和文件CMakeLists.txt。src是用来存放源文件的。3)在目录src下,新建CMakeLists.txt和main.cpp。注意:在cmake工程中,任何子目录都需要建立一个 CMakeLists.txtt2目录下的CMakeLists.txt文件内容:PROJECT (HELLO)ADD_SUBDIRECTORY(src bin)src/CMak.

2021-08-25 15:59:12 1802

原创 【Cmake】在Windows下用Cmake构建C++工程项目——cmake 的 helloworld——1

参考资料:《Cmake 实践》 Cmake Practice --CjackerCmake 实践,是在Linux系统环境下讲解的,有些地方在Windows下看不到该有的效果,而且第一节因为给出的代码有点小问题,所以也运行不成功,所以我重新在Windows环境下,自己整理一下。0. 准备工作之前的准备Cmake工具自己安装好吧,这就不用教了吧!!!https://cmake.org/files/1. 准备工作:首先,建立一个文件夹t1存放我们第一个工程,我的文件夹路径是D:\v...

2021-08-24 15:14:38 1976 2

原创 【QT】VS打开QT项目运行不成功 error MSB6006 “cmd.exe”已退出,代码为 2。

开发平台:error MSB6006 “cmd.exe”已退出,代码为 2。

2021-06-08 15:36:05 5149 3

原创 【设计模式】适配器模式 C++实现

/******************************************参考资料:《大话设计模式》******************************************/一、概念适配器模式(Adapter):将一个类的接口转换成客户希望的另一个接口。Adapter模式使得原本由于接口不兼容而不能一起工作的那个类可以一起工作。二、什么情况下使用适配器模式:系统的数据和行为都正确,但接口不符时,应该考虑使用适配器,目的是使控制范围之外的一个原有对象与某个接口匹配。适配器模

2021-05-31 14:27:28 139

原创 【设计模式】工厂方法模式 C++实现

一、概念工厂方法模式(Factory Method):定义一个用于创建对象的接口,让子类决定实例化哪一个类。工厂方法使一个类的实例化延迟到其子类。二、简单工厂 VS 工厂方法简单工厂的缺点:https://blog.csdn.net/yaodaoji/article/details/116920172我们还是以计算器为例来分析,现在已经有了加减乘除运算,现在我们还想再加一个开根号运算,此时,我们需要在工厂类的case中再添加分支。我们修改了原来的类,这就违背了“开放 - 封闭原则”。所以这种模式不好

2021-05-27 11:42:30 121

原创 【设计模式】装饰模式 C++实现

/***********************************************************************************************参考博客:https://blog.csdn.net/wuzhekai1985/article/details/6672614参考书籍:《大话设计模式》*********************************************************************************

2021-05-26 13:44:37 211 2

原创 【设计模式】单一职责原则

单一职责原则:就一个类而言,应该仅有一个引起它变化的原因。简单说就是一个类只负责一个职责或功能。如果一个类承担的职责过多,就等于把这些职责耦合在一起,一个职责的变化可能会削弱或抑制这个类完成其他职责的能力。这种耦合会导致脆弱的设计。当变化发生时,设计会遭受到意想不到的破坏。...

2021-05-24 16:16:03 167

原创 【设计模式】开放 — 封闭原则

开放 — 封闭原则:对软件实体(类、模块、函数等等)的更改封闭,对扩展开放。通俗的来说就是,不要修改原来已经写好的类、函数等代码,原来写好的最好不要修改,只新增代码。这就是开放-封闭原则。so easy!...

2021-05-24 15:54:08 134

原创 【C语言/C++】大端/小端判断

1.什么是大小端?大小端是数据存储在内存的两种方式。小端是指数据的低字节存放在内存的低地址,高字节存放在内存的高地址。大端是指数据的低字节存放在内存的高地址,高字节存放在内存的低地址。2.如何判断我的电脑是大端模式还是小端模式呢?可以用联合体来写:union point { int a; char b;}un;void judge_big_litter_end(){ un.a = 1; if (un.b == 1) cout << "小端" &l

2021-05-19 10:08:29 744

原创 【设计模式】简单工厂模式 C++实现

一、概念工厂类作用:是一种实例化对象的方式,创造实例。只要输入需要实例化对象的名字,就可以通过工厂类相应的工厂函数来制造你需要的实例对象。简单工厂模式的核心是,对于一个父类的多个继承子类,工厂函数根据用户输入,自动new出一个子类对象并返回其父类的指针,这样利用父类的指针执行父类的虚函数,就可以动态绑定子类的重写函数,从而实现多态。二、例子讲解:计算器Operation为父类,加减乘除为Operation的四个子类,重写Result(),定义工厂类中的工厂函数,其根据用户的输入new出相应的对象实例

2021-05-17 11:27:38 178

原创 【设计模式】单例模式 C++实现

一、概念单例模式(Singleton): 保证一个类仅有一个实例,并提供一个访问它的全局访问点。通常我们可以让一个全局变量使得一个对象被访问,但它不能防止你实例化多个对象。一个最好的办法就是,让类自身负责保存它的唯一实例。这个类可以保证没有其他实例可以被创建,并且它可以提供一个访问该实例的方法。二、实现方法单例模式有三种实现方法:懒汉式、双重锁定(Double-Check-Locking)、饿汉式。1. 懒汉式先看代码:class Singleton //实现单例模式的类 {

2021-05-11 16:15:25 1444 4

原创 【C++】将十进制数转化为二进制,并将每个bit位输出 —— 10

问题:将十进制数转化为二进制,并将32个bit位的每个bit位输出代码:直接上代码:#include <iostream>using namespace std;int main(){ long long int i = 3211264; int j = 0, a[1000], bit[32]; while (i) { a[j] = i % 2; i /= 2; j++; } for (i = j - 1; i >= 0; i--) {

2021-04-15 13:56:37 1282

原创 【机器人】正运动学,如何建立机器人各连杆坐标系和D-H参数表——1

/*参考资料:《机器人学导论 Introduction to Robotics Mechanics and Control》——(美)John J.Craig等*/注意:不管是Standard DH法还是Modified DH法,下面这些知识都是共同的基础。一、先介绍几个简单的专业术语1、Link0:地杆。Link1:和地杆相连,第一个可动的杆件。Link2:第二个可动的杆件。…Linkn:第n个可动的杆件。如图1所示:图1一个连杆有2个轴线,对于Link(i-1),其左右两端的

2021-01-27 10:34:48 12607 9

原创 【SQL】修改数据库编码格式以支持中文——1

1.问题提出使用指令:show create table tech; 查看表的结构,出现乱码:2.原因分析在数据库文件中是这样写的:CREATE TABLE tech( `id` int(32) NOT NULL AUTO_INCREMENT, `FullName` varchar(255) COMMENT '姓名', `job` varchar(255) COMMENT '工作', `Address` varchar(255) COMMENT '地址', `City` va

2021-01-04 14:05:28 3992 1

原创 【C++】windows下使用c++将数据输出到文件 —— 9

一、函数功能将得到的数据输出到指定路径文件内二、代码#include <iostream>#include <windows.h>#include <process.h> #include <fstream>#include <ctime>#include <direct.h>using namespace std;#define MAX_PATH 1000int main() { double a =

2020-11-03 10:50:25 3722 10

原创 【C++】pinv()函数原型以及matlab中的pinv() —— 8

一、pinv()原型函数形式:pinv(J, G, P);核心算法:解释:G是正定矩阵,P是矩阵J的伪逆矩阵。当G为恒定常数时,以下等式成立:函数原型:template<typename DerivedA, typename DerivedB, typename DerivedC>void pinv(const MatrixBase<DerivedA>& J, const MatrixBase<DerivedB>&G, MatrixBase&

2020-10-16 13:55:18 7715 4

原创 【C++】在子线程中调用c++类的成员函数——7

// test.hclass Test{public: Test(); ~Test(); void check();//子线程想要调用的函数 static DWORD WINAPI Fun(LPVOID lpParamter); //子线程函数};// test.cppvoid Test::check() { for (int i = 0; i < 10; i++) { printf("%d : Fun A Thread Fun Display!!\n", i

2020-09-27 10:58:29 1340

原创 【C++】Windows下多个子线程互斥——6

/*多线程入门参考:https://blog.csdn.net/a3192048/article/details/82152618*/多线程编程实例1:一个子线程 + 主线程 + 互斥锁:#include <windows.h>#include <iostream>using namespace std;HANDLE hMutex = NULL;//互斥量//子线程1DWORD WINAPI Fun1(LPVOID lpParamter){ for (in

2020-09-27 10:33:36 245

原创 [ Git ] Git教程——指令

版本管理:创建仓库:git init查看仓库当前的状态:git status查看不同:git diff提交到仓库:git add //将工作区的内容提交到暂存区stagegit commit //将暂存区stage的内容提交到分支master版本的提交日志:git loge120b4554909deb5784d601042766dd10f0c59d5 是commit id(版本号)退回到上一个版本:git reset --hard HEAD^ //退回到上一版本

2020-09-14 15:10:29 113

原创 【C++】vector容器用法 —— 5

1. 参考资料https://www.runoob.com/w3cnote/cpp-vector-container-analysis.html2. vector说明vector是一个封装了动态大小数组的顺序容器。可以理解为动态数组。3. vector初始化方法一:vector < int> a; //创建一个空数组方法二:vector< int> a(10); //创建10个元素的数组,不具有初值,其值不确定。类似数组定义int a[10];方法三:vec

2020-08-14 11:19:04 248

原创 【C++】Eigen介绍与使用 —— 4

一、Eigen介绍Eigen是可以用来进行线性代数、矩阵、向量操作等运算的C++库,它里面包含了很多算法。它的License是MPL2。它支持多平台。Eigen采用源码的方式提供给用户使用,在使用时只需要包含Eigen的头文件即可进行使用。之所以采用这种方式,是因为Eigen采用模板方式实现,由于模板函数不支持分离编译,所以只能提供源码而不是动态库的方式供用户使用。二、官网下载地址官网下载地址为: http://eigen.tuxfamily.org/index.php?title=Main_P

2020-08-07 11:16:06 2455

转载 VS2017的一些调试方法技巧(转)

一、基本的操作。1、启动调试。可以通过VS的调试(Debug)菜单启动调试。点击调试菜单下的“启动调试”或者按F5键启动。如果你已经在代码中加入了断点,那么执行会自动开始。注:退出调试快捷键shift+F5。图 启动调试(Start Debugging)2、断点(Breakpoints)。断点用于通知调试器何时何处暂停程序的执行。通过点击左边栏或者按F9键在当前行添加断点。在加断点之前,你需要知道你的代码将会出现什么错误,在什么地方停止执行。当调试器执行到断点处时,你可以使用其他的调试工具核对

2020-07-31 11:35:25 2284

原创 【C++】c与c++的const区别,什么是引用,什么是const引用

1.const在c语言和c++中的区别?例子:c编译器: const int a = 1; int* p = &a; *p = 2; printf("a = %d\n", a); // a = 2c++编译器: const int a = 1; int* p = &a; *p = 2; printf("a = %d\n", a); // 编译失败小结:在c语言中,const是只读变量,会被分配内存空间,可以通过指针改变其值;在c++中,const是真正的常量,会进

2020-05-16 22:59:16 268

原创 [ shell ] — if、for、while、utile、case、break、continue、函数、重定向——3

一、条件语句a=10b=20#ifif [ $a == $b ]then echo "两数相等" fi写成一行:if [ $a != $b ]; then echo "两数不相等"; fi#if elseif [ $a == $b ]then echo "两数相等" else echo "两数不等" fi#if else-if elsei...

2019-10-29 17:17:59 193

原创 [ shell ] — 注释、运算符、echo、printf、test——2

一、Shell注释1.1.单行注释 #开头的行,就会被注释#--------------------------------------------# 这是一个注释# author:wolves_liu# site:www.wolves_liu.com# slogan:学的不仅是技术,更是梦想!#--------------------------------------------...

2019-10-29 16:56:05 272

原创 [ shell ] — 基础、变量、字符串、数组——1

shell脚本,第一句: #!/bin/sh 或者 #!/bin/bash#!是告诉系统用bash来运行shell脚本命名:name或者name.sh, 后缀.sh更直观,说明这是一个shell脚本文件运行方法:bash test.sh 或者 source test.sh 或者 . test.sh 或者 /bin/sh test.sh 或者 /bin/bash test.sh一、sh...

2019-10-29 16:24:11 188

原创 Python函数传递实参、返回值、传递列表等用法(1) ——8

#!/usr/bin/env python#-- coding:utf-8 --#1.简单的函数def greet_user(): # 函数定义 print("Hello!") """显示简单的问候语"""greet_user() # 函数调用#2.函数带参数def greet_user(username): print("Hel...

2019-08-04 17:44:58 645

原创 Python 用户输入input()和While循环的用法——7

#!/usr/bin/env python#-- coding:utf-8 --#1.用户输入input()用法,input()里面是提示信息,用户输入的才是真正的数据message = input("Tell me something, and I will repeat it back to you: ")print(message)name = input("Please ent...

2019-08-02 10:43:01 1143

原创 Python 字典的用法——6

#!/usr/bin/env python#-- coding:utf-8 --#字典#1.简单的字典alien_0 = {'color': 'green', 'points': 5} # 字典是大括号,列表是中括号print(alien_0['color'])print(alien_0['points'])#2.访问字典的值alien_0 = {'color': 'gree...

2019-08-01 18:19:57 221

原创 Python if语法——5

#!/usr/bin/env python#-- coding:utf-8 --1.基本语法cars = ['audi', 'bmw', 'subaru', 'toyota']for car in cars: if car == "bmw": # 注意:if后面不要括号,别忘了冒号 print(car.upper()) else: ...

2019-07-24 11:06:41 449

原创 Python 列表list(2)——4

list高级应用1.遍历列表bi = ['we', 'love', 'aruba', 'laL']for a in bi: # print(a) print(a.title() + ", that was a great trick!")print(a + ", good\n")2.range()函数让你能够轻松地生成一系列的数字for var in range(1,...

2019-07-24 10:37:38 471

原创 Python 列表list(1)——3

#!/usr/bin/env python-- coding:utf-8 --列表的简单应用bi = [‘we’, ‘love’, ‘aruba’, ‘laL’]1.列表的访问print(bi[0].title())print(bi[-1]) # 访问倒数第一个元素print(bi[-3]) # 访问倒数第三个元素message = "my bike is ...

2019-07-24 10:33:31 749

原创 python列表的魔法——2

#!/uer/bin/env python-- coding:utf8 --ctrl + ? 多行注释/取消注释list 列表的魔法list #类 列表li=[2,6,5,8"alex",[aa,bb,cc],s]#列表的格式#列表元素的类型#1.索引取值print(li[0]) // 2 li[0] 第0个元素#2.切片取值print(li[1:3]) //...

2019-07-18 23:09:45 111

offline_certificates.zip

我在下载完VS2017离线安装包后,安装时会提示程序清单验证失败,原因是签名证书不全,现在我把三个签名文件和程序都传上来,替换原来的文件就可以正常安装了

2020-09-14

c++遍历文件夹及其子文件夹所有文件 并输出文件路径和文件内容

在window下,使用c++遍历文件夹及其子文件夹所有文件 并输出文件路径和文件内容。网上的资源大多都只是遍历文件夹,但是我需要打印出文件内容,所以自己弄了两天,这就是我的成果(*^__^*) ……

2018-04-12

libtool-2.4.2.tar.xz

libjpeg的移植时,在编译过程中会用到libtool-2.4.2工具,如果没有这个工具或者版本过低,则会出现错误,编译无法通过。

2018-03-05

SouceInsight使用方法

SourceInsight的基本使用,包括建立工程、添加文件和解析工程文件,每一步都写的很清楚,配有截图

2017-12-06

3.90和3.98和5.24版本的ucgui源码

这是经过我检测的三个版本gui源码,分享给大家。UCGUI是一种嵌入式应用中的图形支持系统。它设计用于为任何使用LCD图形显示的应用提供高效的独立于处理器及LCD控制器的图形用户接口,它适用单任务或是多任务系统环境, 并适用于任意LCD控制器和CPU下任何尺寸的真实显示或虚拟显示。它的设计架构是模块化的,由不同的模块中的不同层组成,由一个LCD驱动层来包含所有对LCD的具体图形操作。

2017-09-07

如何安装VMware tool

我在安装VMware tool中遇到的问题

2017-02-14

空空如也

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

TA关注的人

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