C\C++
文章平均质量分 65
Eritque arcus
co~co~da~yo
展开
-
c++ 重定向 cout / cerr 到自定义日志方法
代码】c++重定向cout/cerr到自定义日志方法。原创 2022-07-25 17:01:50 · 494 阅读 · 1 评论 -
C++ 一种禁止方法被使用的宏
#if defined(_MSC_VER)#define ShouldNotUse(msg) _Pragma("warning(error:4996)") [[deprecated(msg)]] _Pragma("warning(warning:4996)")#else#if defined(__GNUC__)#define ShouldNotUse(msg) [[deprecated(msg)]] __attribute__((error(msg)))#else#define ShouldNo原创 2022-03-09 11:06:58 · 674 阅读 · 0 评论 -
aho-corasick automaton (AC自动机)的理解
aho-corasick automaton AC自动机的理解1. 背景2. 思想3. 代码3.1 Trie树最近在学编译原理, 里面在3.3节词法单元识别后面就提到了这个算法然后根据网上资料自己做了一遍,只支持英文字母1. 背景大概涉及到的知识:Tire 树,一种字典树,可以看这里做的挺直观的BFS 广度优先搜索Tire树状态压缩,随便做的小优化,可能有负效果对于数据量小(x主要思想就是用int/long这种数据类型的每一位通过位运算当作bool而不是单独声明bool类型, 主要的算法原创 2022-01-11 14:45:39 · 966 阅读 · 0 评论 -
对使用状态压缩和动态规划求hamilton最短路径的理解
对使用状态压缩和动态规划求hamilton最短路径的理解hamilton问题最短路径预设操作二进制的一些小算法状态压缩动态规划预设输入输出算法代码hamilton问题即:给定一张 n(n≤20) 个点的带权无向图,点从 0~n-1 标号,求起点 0 到终点 n-1 的最短Hamilton路径。 Hamilton路径的定义是从 0 到 n-1 不重不漏地经过每个点恰好一次。通俗来说就是,图表示大概为这个样子本文中,代码里的^ 代表xor, 文本中的^ 代表次方最短路径本文主要解释通过状态压原创 2021-06-20 12:14:22 · 522 阅读 · 0 评论 -
C++ jstring to string (UTF16->UTF8)
JNI中jstring转码到std::string其实就是utf16转码到你选择的编码的过程,因为我C++程序要用utf8,所以这里我转成utf8用到的转码库是utfcpp这个库的使用方法就是下载source文件夹下全部内容,然后#include "utf8.h"在你的项目代码:std::string Tools::jstring2str(jstring jStr, JNIEnv* env) { if(!jStr) { //警告:kotlin部分返回空字符串原创 2021-06-11 23:15:01 · 2084 阅读 · 2 评论 -
kotlin + C++ 使用jni中遇到的一些坑和建议
kotlin + C++ 使用jni中遇到的一些坑和建议kotlin部分kotlinc函数签名传输类型协程启动方式之一C++部分JNIEnvjmethodID错误捕获参考文档本文为笔者在做https://github.com/Nambers/MiraiCP中遇到的坑kotlin部分kotlinc使用kotlinc代替javac命令,需要自己在搜索引擎上下载函数签名javap -s 类包路径查询函数签名,如C:\Program Files\Java\jdk1.8.0_261\bin\javah原创 2020-09-07 20:44:51 · 1038 阅读 · 0 评论 -
Mirai qq机器人 c++版sdk(MiraiCP)
Mirai机器人c++版前言类似教程MiraiCP git地址c++开发mirai原理大概流程实现使用流程:0 配置环境1 下载启动器(mcl)2 了解项目3 注意事项4 使用方法:4.1 使用release包4.2 使用源代码C++新版开发文档本文已过时,请浏览以上链接代替本文前言因为酷q等机器人的失效,笔者接触到了mirai机器人,但是mirai官方提供的教程等资料不多而且kotlin对于我来说还是有点不方便很方便(doge),因此有了用c++写mirai的想法类似教程kotlin mi原创 2020-08-29 15:08:43 · 7403 阅读 · 20 评论 -
C++把数字排序
C++把数字排序描述思路代码描述如题,详细如下:输入不超过1024个数字,以特殊数字结尾,如(-999),把数字从小到大排序。思路目前,我们有两种思路可以写:1是 在输入的时候,排序数组。2是 先输入到数组,再排序。其中,笔者认为第一种更简单,故此,本章采取第一种思路。代码#include <iostream>using namespace std;//命名空间...原创 2020-04-15 09:29:07 · 4582 阅读 · 0 评论