自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(61)
  • 资源 (8)
  • 收藏
  • 关注

原创 C/C++内嵌简本语言-LUA

Lua [1]是一个小巧的。Lua脚本可以很容易的被C/C++ 代码调用,也可以反过来调用C/C++的函数,这使得Lua在应用程序中可以被广泛应用。不仅仅作为扩展脚本,也可以作为普通的配置文件,代替XML,ini等文件格式,并且更容易理解和维护。[2] Lua由标准C编写而成,代码简洁优美,几乎在所有操作系统和平台上都可以编译,运行。[2] 一个完整的Lua解释器不过200k,在所有脚本引擎中,Lua的速度是最快的。这一切都决定了Lua是作为嵌入式脚本的最佳选择。[2]

2023-11-13 09:09:53 979

原创 c++加C#实现android开发

C++加C#实现跨平台移动方案

2022-07-22 17:33:56 1489 2

原创 MQTT学习

MQTT系列教程VS编译MQTT库 C/C++ mqtt库MQTT 服务器brokers列表

2022-05-06 14:30:11 1231

原创 Redis的使用

windows下使用redis c++ - itdef - 博客园几种Redis可视化工具C++操作Redis的简单例子_imxiangzi的博客-CSDN博客_c++ redisredis用户权限管理

2022-04-22 09:21:51 883

原创 C#调用C++

一、C#调用C/c++动态库1.使用.net 提供的DllImport 导入相关的C++ 库C#调用C++动态库 - 章为忠 2.使用LoadLibrary ( string lpFileName)动态加载C#动态加载C++动态链接库 - 章为忠二、委托与函数指针转换class StringHelper { public delegate string StringDelegate(string message); static...

2022-04-11 08:56:34 533

原创 win10 NFS共享ubuntu服务端

win10 与ubuntu简单配置实现目录共享---NFS

2022-01-17 10:17:34 932

原创 VS 调试

查看当前所有线程堆栈【Debug】【Windows】【Threads】查看数组内容

2021-12-09 16:30:12 81

原创 gdb调试core/dump

一、core/dump核心转储文件生成1.设置文件大小查看设置生成的core文件大小ulimit -c设置文件大小为1024 : ulimit -c 1024设置不限定生成文件大小:ulimit -c unlimnited2.设置文件生成路径和文件命名规则注意修改内核文件需要“root”账号,sudo su。echo "/corefilepath/core-%e-%p-%t" > /proc/sys/kernel/core_pattern将会控制所产生的 core 文件

2021-11-29 09:11:37 764

原创 yocs_velocity_smoother源码编译

前言:最近ROS开发环境转到ubuntu18(melodic)上后发现原来的有些默认安装的包没了。需要手动安装。源代码地址:https://github.com/yujinrobot/yujin_ocs.git一、编译cd */yujin_ocs/yocs_velocity_smoother/mkdir buildcd buildcmake ..make如果缺少依赖,使用sudo apt-get install 安装即可。我安装时缺少ecl-threads.sudo apt.

2021-11-18 09:21:37 326

原创 ros启动非本机节点

1.搭建好节点主机在非主机上设好ROS_MASTER_URI,保证每台设备都能访问ros Master。2.设置远程脚本#!/bin/bashexport ROSLAUNCH_SSH_UNKNOWN=1export ROS_MASTER_URI=http://192.168.31.6:11311source /opt/ros/kinetic/setup.bashsource ~/dashgo_ws/devel/setup.bashexport ROS_HOSTNAME=ros-sma

2021-11-02 10:35:05 264

原创 ubuntu网卡找不到

VMWare 中ubuntu16虚拟机中,网卡找不到了。实体机也会偶然遇到。此处讨论的不是:1.网卡驱动没装或坏了2.网络服务没有开启。是系统异常退出,导致的网络BUG。解决方案:1、sudo service network-manager stop2、sudo rm /var/lib/NetworkManager/NetworkManager.state3、sudo service network-manager start...

2021-11-01 17:55:53 2501

转载 C#进程运行权限

环境说明: VS2012,windows 7 亲自验证过win7 和xp ,XP直接不弹框,因为XP没有UAC控制机制步骤1:右键项目--》属性--》安全性--》选中【启用ClickOnce安全设置】此时在我们的项目下Properties目录下多了个叫 app.manifest 的文件步骤2:文件里面的代码如下,我们只需要将以下这句更改了即可<requestedExecutionLevel level="asInvoker" uiAccess="false" /&gt..

2021-10-19 14:16:24 419

原创 Cmake笔记

#指定运行时加载的路径SET(CMAKE_BUILD_WITH_INSTALL_RPATH TRUE) SET(CMAKE_INSTALL_RPATH "\${ORIGIN}/lib") #指定运行时动态库的加载路径,ORIGIN指运行文件所在目录find_package#静默查找find_package(PackageName QUIET)

2021-08-06 11:00:28 120

原创 ubuntu设置静态IP

1.ubuntu16静态网络配置vi /etc/network/interfaceauto ens33 #网卡名iface ens33 inet static #设置为静态address 192.168.190.3 #IP地址netmask 255.255.255.0 #子网掩码gateway 192.168.190.2 #网关dns-nameserver 114.114.114.114 #DNS服务器vi /etc/resolv.conf 可以添加网关nameser.

2021-02-25 13:54:00 111

原创 /etc/rc.local 设置UI程序开机自启动

sudo vi /etc/rc.local添加启动程序的命令与Windows不同,Linux下的UI程序必须要开启桌面的账户才能有权限开启。/etc/rc.local 是root账户,如果要启动UI程序首先需要切换用户。例如我当前桌面登录用户是pi, 开启UI程序的脚本是start.sh。在rc.local中加入su - pi -c 'echo "pi"|sudo /home/pi/start.sh'su - pi -c '命令':单引号里是启动脚本命令;sudo /home/.

2021-02-24 16:17:40 991

原创 Js调用C++动态库(v8)

目录一、node-ffi模块二、C++拓展插件1.hello world入门2.开发延伸JS调用C++的两种方式:node-ffi、C++拓展插件。一、node-ffi模块node-ffi 对不了解C++的同学很友好。操作简单,npm install ffi搭建好环境就好了。缺点是只支持C形式的接口。二、C++拓展插件C++拓展插件需要C++的知识,适合兼任C++工程师的同学来搞,功能强大。1.hello world入门2.开发延伸...

2020-10-27 17:34:51 4694 3

原创 WIX 路径中带空格

WIX在安装环境的时候,很多情况下都需要将安装目录当做参数传给执行程序。这时候稍不注意就会掉进路径中带有空格的大水坑中。我最开始的时候是在程序里再把参数做个重组。后来突然意识到加个“”引号就可以了。好吧,还是xml这些东西用的不熟练,限制了思路。https://www.cnblogs.com/hechengbo/archive/2012/07/04/2576666.html...

2020-09-08 10:36:10 112

原创 libc.so.6/glibc交叉编译

不同的系统版本libc.so.6链接的库libc库都不同,比方说ubuntu18是libc-2.27.so,ubuntu20则是libc-3.31.so。x86_64平台的库网上比较容易下载到,源码编译也比较简单,就不说了,这里说一下交叉编译方法,以及自己遇到的问题。官网glibc不同版本源码下载地址:http://mirrors.nju.edu.cn/gnu/libc/我编好的glic-2.30的库:https://download.csdn.net/download/lifei_0001

2020-08-25 09:08:07 3827

原创 libevent与多线程

首先在进程中,libevent的一个base实际上就是一个while循环,当系统内核捕捉到事件发生时,它就会按照事件的优先级将这些捕捉到的事件,用注册时的回调函数处理。怎样和多线程一起用呢?我认为有两个解决方案。一、将监听accept和连接connect注册到一个base上,当有事件触发时,开新的线程处理接受到的数据。二、使用1+N个线程,每个线程一个base。 1个监听线程,他只负责监听连接。有新的客户端连接进来时,将连接的socket交个某个线程处理。这里可以采用轮询策略。...

2020-08-19 11:18:32 580

原创 C++ 使用动态库的奇怪问题

1.VS使用动态库,报了“找不到程序入口,···”;原因:在项目属性里引入动态库是名称应该写“xxx.lib”,写成了“xxx.lib”。Windows生成的动态库与Linux不同,包含两个文件一个是xxx.lib,一个是“xxx.dll”。xxx.lib里面包含的是API接口的索引,在编译的时候要用到,而接口实体在“xxx.dll”里,链接的时候用到。2.编译没问题,运行的时候异常或崩溃。原因:使用Debug的动态库,去编译release版本的程序。debug和release是不能通.

2020-08-14 08:47:06 277

原创 libevent多线程服务端+客户端源码

多线程实现的server,client源码,仅供交流学习:git仓库:https://github.com/lifei0818/libeventMultithThread.git参考:https://www.cnblogs.com/james6176/p/4285018.htmlhttps://www.cnblogs.com/james6176/p/4285018.html

2020-08-10 17:19:01 375

原创 mysql常用语句

一、mysql 复制表结构1.同库中复制表:1)方法1:SELECT条件查询CREATE TABLE CONTACTS_BK AS SELECT * FROM CONTACTS WHERE 1=2;2)方法2:LIKE关键字CREATE TABLE CONTACTS_BK LIKE CONTACTS;2.复制表到另一个数据库 表名前加上数据库名即可,注意数据库名区分大小写:CREATE TABLE hrdb.CONTACTS_BK LIKE yiibaidb.CO..

2020-08-03 09:19:31 76

原创 Linux下解压缩

https://www.cnblogs.com/nhdlb/p/11568991.html目录tar rar jar unzip zip 解压tar.xz包 解压tar包 解压tar.gz包 解压tar.bz2包 解压tar.Z包 解压rar包 解压zip包 解压war包 解压rar包 压缩tar.xz包 压缩war包 压缩zip包 压缩rar包正文回到顶部tar-c: 建立压缩档案-x:解压-t:查看内容-r:向压缩归档文件末尾追加文件-u:..

2020-07-17 10:16:54 140

原创 rosrun rqt_plot 错误

在终端运行 rosrun rqt_plot rqt_plot时报错:老铁的解决方案:https://www.pythonf.cn/read/88801Python pip 安装:https://www.runoob.com/w3cnote/python-pip-install-usage.html

2020-06-12 18:10:44 657

原创 gdb 退出循环/函数

跳出循环:until 执行到一个比当前行号大的行,或者也可以指定在当前frame(我理解成函数)中的某一行适合打循环跳出函数:finish 执行,直到选定的frame执行结束,然后打印返回值,将其放入历史值中,停止退出函数:return ;...

2020-06-12 08:52:22 4479

原创 ROS环境搭建

今天开始学习ROS。ROS(Robot Operating System, 机器人操作系统) 提供一系列程序库和工具以帮助软件开发者创建机器人应用软件。说是操作系统,实际上是一个软件框架。提供了丰富的机器人相关库以及工具,说是系统也对。官方安装及使用文档:http://wiki.ros.org/kinetic/Installation/Ubuntu步骤很简单,一顿操作之后,失败!仔细阅读官网安装步骤:1. InstallationROS KineticONLYsupports ...

2020-06-04 14:53:50 163

转载 Wix 多语言安装包

挺好的,挺好的Wix 安装部署教程(十三) -- 多语言安装包https://www.cnblogs.com/stoneniqiu/p/4725714.html

2020-05-25 16:06:54 242

原创 internal compiler error

linux 下编译时出现internal compiler error: Killed (program cc1plus),大致原因是gcc在编译的时候会大量使用内存,内存不足导致编译错误,解决方法就是加一个交换分区。1. 创建分区文件//创建一个1M x 1024 = 1G 的文件sudo dd if=/dev/zero of=/swapfile bs=1M count=10242. 将上个文件生成Swap 文件sudo mkswap /swapfile3. 激活swap文件

2020-05-23 09:33:40 2646

原创 Swig 对C++运算符重载、模板编程、STL的处理

目录一、SWIG运算符重载二、模板编程三、STL一、SWIG运算符重载运算符重载技术上和其他函数重载没什么区别。区别在于运算符实际调用的函数名不同。C++调用的实际上是operator 加运算符,比如operator+。那么问题是其他语言的运算符实际上很多都不是这样的,比如Python,他的“+"号运算符实际上是__add__。这可咋整?SWIG里可以用rename对运算符重命名,命名成目标语言对应的名字。%module RobSoft%{ #include "*.h"%}

2020-05-20 14:21:52 795 1

原创 将xml嵌入程序中

我想将关于我的DLL的配置信息存储在我的DLL内的XML文件中,即如果需要进行更改,则必须重新编译DLL.原因是因为它的格式优雅,我可能不会使用此DLL的配置文件.有任何想法吗?我真的希望能够在Visual Studio中编辑一个xml然后编译它,只在输出中看到一个DLL.解决方法是 – 包含它作为嵌入式资源(即在Visual Studio中的项目的属性中使用该设置),然后使用Assembly.GetManifestResourceStream来读取它.我一直这样做单元测试数据.如你..

2020-05-15 13:59:25 169

转载 尘心

这是佛经里的一句话~~我看看~~~佛对我说:你的心上有尘。我用力地擦拭。佛说:你错了,尘是擦不掉的。我于是将心剥了下来.佛又说:你又错了,尘本非尘,何来有尘我领悟不透,是什么意思?我想这是从神秀和慧能那两个偈子引申出来。神秀说:“身是菩提树,心如明镜台,时时勤拂拭,勿使惹尘埃。”慧能说:“菩提本无树,明镜亦非台,本来无一物,何处惹尘埃。”的确,要能够参透这两个偈子的确很难,就是正确的理解也不易。参悟不透...身是菩提树,心如明镜台,时时勤拂拭,勿使惹尘埃众生的身体就是一棵觉悟的智慧树

2020-05-15 09:01:24 231

原创 windows设置批处理编译环境

Table of Contents1.Windows X64 编译环境设置2.Windows X86 编译环境设置假设你已经装好了VC的环境。拿到一个C++的demo,是用批处理写的。尝试编译,报“fatal error C1034: Windows.h: 不包括路径集”。这还不简单吗,直接找到windows.h 将路径添加到换将变量里就可以了!!然而并没有个鸟用。正确的打开方...

2020-04-25 09:17:17 295 1

原创 wix使用

批量导入文件https://blog.csdn.net/dirichlet_zju/article/details/80150632这时代码里的var.xxxname在工程项目里是未定义的变量,这个时候我们自然想到在项目属性里添加,下图位置。添加后依然报undefined preprocessor variables,关掉项目重新打开发现我定义的变量又没了,说明没有真正的定义进去。不知道为...

2020-04-24 10:35:09 923

原创 Cmake生成动态库问题

为什么我生成的动态库里找不到类或符号。在使用时编译器会报未声明的定义? 因为我们在使用Cmake组织项目文件时,习惯于将特定功能放在不同的目录,在不同的目录生成Cmake的子项目。子项目生成*.a文件,然后再在根项目链接各子项目。这个时候由于静态库的特点就会出一些问题。 我们在根项目源文件里没有使用某个类,而在引用动态库时又用到了这个类,这是就会出现文章开头的问题。由于静态库...

2020-04-21 09:42:22 605

原创 SWIG 生成C#中继承、模板

SWIG对C#的支持好像还不太好,有时需要手动修改一些地方。1. 模板类。貌似不支持模板类的转化。在生成的*.cxx文件中,有些用到模板类的地方需要手动将命名空间加上。2. 命名空间SWIG将所有的接口都放在了定义的模块命名空间下。3. 继承关系文档上讲支持单继承,不支持多重继承,但是在使用的过程中感觉有些类的继承是有的,有些生成类就不包含继承。我的处理方法是在生成类的...

2020-04-20 14:02:11 494 1

原创 Swig的使用

一、Swig在windows下的使用流程https://blog.csdn.net/zy1049677338/article/details/85203174二、LINUX源码安装swighttps://blog.csdn.net/veryitman/article/details/17398151三、swig 将c++转换为python 接口https://blog.csdn...

2020-04-13 11:09:13 232

转载 git 创建子仓库 submodule

原文:https://blog.csdn.net/u013463707/article/details/98758863使用Git submodule步骤:一、先clone 一个父仓库:git clone "ssh://1632@ip:29418/test"cd testgit submodule add <submodule_url>例如:git submodule...

2020-04-07 11:17:47 957

转载 C#代码规范

目的  1.方便代码的交流和维护。  2.不影响编码的效率,不与大众习惯冲突。  3.使代码更美观、阅读更方便。  4.使代码的逻辑更清晰、更易于理解。在C#中通常使用的两种编码方式如下  Camel(驼峰式): 大小写形式-除了第一个单词,所有单词第一个字母大写,其他字母小写。  Pascal(帕斯卡): 大小写形式-所有单词第一个字母大写,其他字母小写。C#代码规...

2020-04-03 14:31:13 227

原创 七、命令模式

命令模式(Command Pattern)是一种数据驱动的设计模式,它属于行为型模式。请求以命令的形式包裹在对象中,并传给调用对象。调用对象寻找可以处理该命令的合适的对象,并把该命令传给相应的对象,该对象执行命令。优点:1、降低了系统耦合度。 2、新的命令可以很容易添加到系统中去。使用场景:认为是命令的地方都可以使用命令模式,比如: 1、GUI 中每一个按钮都是一条命令。 2、模拟 CM...

2020-04-01 09:15:20 70

原创 六、适配器模式

适配器模式(Adapter Pattern)是作为两个不兼容的接口之间的桥梁。这种类型的设计模式属于结构型模式,它结合了两个独立接口的功能。这种模式涉及到一个单一的类,该类负责加入独立的或不兼容的接口功能。举个真实的例子,读卡器是作为内存卡和笔记本之间的适配器。您将内存卡插入读卡器,再将读卡器插入笔记本,这样就可以通过笔记本来读取内存卡。...

2020-03-31 09:11:33 79

GRPC C++静态库,头文件

GRPC源码编译,v1.48.0-prel分支 git clone https://github.com/grpc/grpc 按照grpc/src/cpp/BUILDING.MD编译。 供源码不好获取,编译困难,又想使用或学习的同学。

2022-07-25

grpc+submodule

git clone https://github.com/grpc/grpc git submodule update --init 历经千辛万苦拉下来的代码。 共享一下。

2022-05-19

rt-kernel.tgz

RaspbrryPi 2、3B实时内核补丁。

2021-12-18

glibc-2.30_arm.tar.xz

glibc-2.30版本,源码交叉编译生成的动态库。运行在arm平台上。libc.so.6版本比较低的可直接拿去更新。

2020-08-24

linux_libevent_SDK.zip

libevent-2.1.12-stable Linux下编译的动态库,包含头文件。可在自己的c/C++代码中使用。因为是在ubuntu.20下编译的,GCC、G++版本是9.0,如果在使用过程中出现编译符号问题,请考虑更新自己的gcc/g++版本

2020-08-20

windows_libevent_SDK.zip

libevent-2.1.12-stable Windows下编译的动态库,头文件。可在自己的C/C++代码中直接使用。本动态库编译时不包含opensll.

2020-08-20

Windows_mysql_SDK.zip

windows下MySQL的SDK,包含MySQL的头文件,动态库。MySQL版本是8.0.2。可以在自己的C++代码中实现mysql使用,包括客户端的登录,数据库的访问,数据库的增删改查等。

2020-08-20

dist.zip 包含jsoncpp全部源码的一个cpp文件

jsoncpp 源码生成的一个cpp文件,和两个必须的头文件。

2019-06-27

空空如也

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

TA关注的人

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