精易论坛

标题: c++仿易语言跨平台中文命令库,用易写cpp [打印本页]

作者: 阿龙    时间: 2023-1-5 09:29
标题: c++仿易语言跨平台中文命令库,用易写cpp
本帖最后由 阿龙 于 2023-1-5 09:35 编辑

两个目的
1.帮助易友入门.
2.对于易写易库的众多支持库,没有c++基础的水友也能使用此库进行支持库重构。


对于易语言初学c++的朋友帮助应该会很大,足够使用到你了解常用的stl和c++11的基本语法。
对于c++大佬,希望能参与帮忙优化代码。


纯易写法:
[C++] 纯文本查看 复制代码
int main() {
        数组<整数型> 整数数组;
        置随机数种子();
        计次循环首(100, i) {
                加入成员(整数数组, 取随机数(1, 10));
        }
        字节集 字节集数据 = { 0,4,7,1,5 };
        文本型 文本型变量 = L"unicode字符";
        调试输出(整数数组, 字节集数据 + 到字节集(文本型变量));

}


部分测试:
[C++] 纯文本查看 复制代码
int main() {
        数组<整数型> fruits = { 2,71, 45,11,32, 674,88, 5465,946 ,8676 };
        数组排序(fruits);
       整数型 index = 二分查找(fruits, 8676);
        如果(index != -1) {
                 标准输出(0,"Found cherry at index ");
        }
        否则 {
                标准输出(0,"Cherry not found" );
        }
        返回 (0);
}


寻找文本速度对比:(这个寻找文本速度能拉开易语言300多倍,算法我尝试了很多,最后还是发现stl的KMP更快。)
[C++] 纯文本查看 复制代码

int main() {
        std::string S = "sadbutsdsadstsdsadsatsdsadsatsdsadsatsdsadsatsdsadsadstsdsadsatsdsadsatsdsadsatsdsadsatsdsadsadstsdsadsatsdsadsatsdsadsatsdsadsatsdsadsadstsdsadsatsdsadsatsdsadsatsdsadsatsdsadsadstsdsadsatsdsadsatsdsadsatsdsadsatsdsadsadstsdsadsatsdsadsatsdsadsatsdsadsatsdsadsadstsdsadsatsdsadsatsdsadsatsdsadsatsdsadsadstsdsadsatsdsadsatsdsadsatsdsadsatsdsadsadstsdsadsatsdsadsatsdsadsatsdsadsatsdsadsadstsdsadsatsdsadsatsdsadsatsdsadsatsdsadsadstsdsadsatsdsadsatsdsadsatsdsadsatsdsadsadstsdsadsatsdsadsatsdsadsatsdsadsatsdsadsadstsdsadsatsdsadsatsdsadsatsdsadsatsdsadsadstsdsadsatsdsadsatsdsadsatsdsadsatsdsadsadstsdsadsatsdsadsatsdsadsatsdsadsatsdsadsadstsdsadsatsdsadsatsdsadsatsdsadsatsdsadsadstsdsadsatsdsadsatsdsadsatsdsadsatsdsadsaafsasadsatsdsadsatsdsadsatsdsadsatsdsadsaafsasadsatsdsadsatsdsadsatsdsadsatsdsadsaafsasadsatsdsadsatsdsadsatsdsadsatsdsadsaafsasadsatsdsadsatsdsadsatsdsadsatsdsadsaafsasadsatsdsadsatsdsadsatsdsadsatsdsadsaafsasadsatsdsadsatsdsadsatsdsadsatsdsadsaafsasadsatsdsadsatsdsadsatsdsadsatsdsadsaafsasadsatsdsadsatsdsadsatsdsadsatsdsadsaafsasadsatsdsadsatsdsadsatsdsadsatsdsadsaafsasadsatsdsadsatsdsadsatsdsadsatsdsadsaafsasadsatsdsadsatsdsadsatsdsadsatsdsadsaafsafwaewadsaadt = formatted_text.find(f", N = "tsdsadsatsdsadsatsdsadsaafsafwaewadsaadt = formatted_text.find(f";
        intptr_t  A, B, ret = 0;
        size_t i;
        A = GetTickCount();
        for (i = 0; i < 9999999; i++)
        {
                ret = 寻找文本(S, N, 0, false);
        }
        B = GetTickCount();
        标准输出(0, "速度:" + std::to_string(B - A) + "位置:" + to_string(ret) + " " + std::to_string(i));
}




零基础应该也可以无缝使用(前提你不能太傻)


代码里并没有定义任何数据类型,全部来自标准库,并且代码解耦程度极高,没有任何标准库或平台库以外的外部依赖,也就是说你其中的任何一个代码你都可以抠出来直接使用。
每个函数或者类是一个单独的cpp,静态库的情况下编译出来的代码仅会链接到你所使用的代码。
Lib是windows动态链接库, Static_Lib是静态库。

此代码是从我去年4月写的e2cpp核心库项目扣的,因为原始只考虑了win平台,所以目前还有很多代码并没有添加进去,主要原因是无法使其进行跨平台,还有一小部分是套用了开源项目,依赖度比较高,不打算再添加进去例如sqlite3的包装。
部分未移植:
未移植.png 未移植2.png






刚阳前两天和死了一样昨天打了一针好多了。准备出门打针,有问题留言,看到了再回复。

作者: 陽陽陽    时间: 2023-1-5 09:43
第一个,支持下
作者: 财付通消息    时间: 2023-1-5 09:45
支持一个
作者: 君杰    时间: 2023-1-5 09:46
支持一个
作者: TBit    时间: 2023-1-5 09:58
支持大佬
作者: 安慕希ii    时间: 2023-1-5 10:05
回复看隐藏
作者: pjm123    时间: 2023-1-5 10:08
谢谢分享
作者: 卡罢死机    时间: 2023-1-5 10:10
支持大佬
作者: 冰点    时间: 2023-1-5 10:16
原来打针这么有效果,早知道之前就去挂水了。。躺了几天才好点哎
作者: 2205345266    时间: 2023-1-5 10:20
支持大佬
作者: 醉酒成梦°    时间: 2023-1-5 10:21
看看
作者: 影子需要光    时间: 2023-1-5 10:22
牛批,不过我认为搞这个纯属为难自己
作者: darkany    时间: 2023-1-5 10:24
666666 下载看看
作者: 弄月    时间: 2023-1-5 10:25
先回复看看内容,大佬厉害
作者: 阿龙    时间: 2023-1-5 10:27
冰点 发表于 2023-1-5 10:16
原来打针这么有效果,早知道之前就去挂水了。。躺了几天才好点哎

很管用,刚做完单管,准备打针去了。
作者: chenyucheng    时间: 2023-1-5 10:28
我觉得应该是这样
[C++] 纯文本查看 复制代码
int main() {
        整数型[0] 整数数组;
        置随机数种子((无符号整数型)取现行时间(无));
        循环(整数型 i=1;i<=100;i++) {
                加入成员(整数数组, 取随机数(1, 10));
        }
        字节型[5] 字节集数据 = { 0,4,7,1,5 };
        文本型 文本型变量 = L"unicode字符";
        标准输出(整数数组, 字节集数据 + (字节集)文本型变量);

}


补充内容 (2023-1-6 14:11):
字符串前面的L 改成“长字”或“长”或“宽”
作者: jysoft2022    时间: 2023-1-5 10:33
感谢分享,很给力
作者: denz2008    时间: 2023-1-5 10:36

感谢分享
作者: dzscuz    时间: 2023-1-5 10:42
这就牛了,厉害,大神
作者: zjmowu    时间: 2023-1-5 10:48
感谢分享,很给力
作者: szl    时间: 2023-1-5 10:48
下载研究看看
作者: 1吉祥1    时间: 2023-1-5 10:49
感谢分享,很给力
作者: 易语言接单客    时间: 2023-1-5 10:49
回复学习
作者: ffsfdsa    时间: 2023-1-5 10:55
c++仿易语言跨平台中文命令库,用易写cpp
作者: yujiekuxiao    时间: 2023-1-5 11:00
来看一下  正需要c++
作者: 美味萝卜    时间: 2023-1-5 11:07
        感谢分享,很给力!~
作者: 飘零    时间: 2023-1-5 11:16
感谢分享,很给力
作者: Kyu    时间: 2023-1-5 11:17

作者: hao1997    时间: 2023-1-5 11:18
感谢分享
作者: 小白弟弟    时间: 2023-1-5 11:27
6666666666666666666666666666666666666
作者: 尖叫    时间: 2023-1-5 11:30
牛逼呀弟弟
作者: 皮卡秋    时间: 2023-1-5 11:35
零基础应该也可以无缝使用(前提你不能太傻)
作者: 本森Bin    时间: 2023-1-5 11:35
感谢大神分享,很给力!~
作者: q1512960733    时间: 2023-1-5 11:37
        感谢分享,很给力!~
作者: 梁庆昌℡    时间: 2023-1-5 11:39

感谢大神分享,很给力!~
作者: JerryYan    时间: 2023-1-5 11:45
感谢分享,很给力!~
作者: 晓月Am    时间: 2023-1-5 11:54
感谢分享了
作者: 315215    时间: 2023-1-5 11:58
大佬就是不一样,带来看看
作者: kflizcst    时间: 2023-1-5 12:11
支持开源~!感谢分享
作者: 1109656712    时间: 2023-1-5 12:21
看看 什么东西
作者: shuaier    时间: 2023-1-5 12:29
支持开源!支持楼主!
作者: zhixiao    时间: 2023-1-5 12:39
支持大佬,希望能多有一些这样的c++库或例子
作者: quary888    时间: 2023-1-5 12:43
谢谢楼主分享!!! 好人一生平安!!!
作者: 指路仙人    时间: 2023-1-5 12:46
我都快好了,还有点咳嗽
作者: LOLzouA    时间: 2023-1-5 13:01
支持开源!
作者: 315215    时间: 2023-1-5 13:48
用语言的,没多少要求是跨平台的,一起放出出来吧
作者: hao1997    时间: 2023-1-5 13:59
这操作6了
作者: 七夜a    时间: 2023-1-5 14:21

支持开源!
作者: wjswzj0    时间: 2023-1-5 14:40
支持开源~!感谢分享
作者: jykhjylk    时间: 2023-1-5 14:42
我又要学习C了吗,哈哈
作者: Code123    时间: 2023-1-5 14:57

用语言的,没多少要求是跨平台的,一起放出出来吧
作者: 六先生    时间: 2023-1-5 16:02
感谢分享!
作者: 鱼雨遇玉羽    时间: 2023-1-5 16:06
看看支持一下!
作者: ~夜雨    时间: 2023-1-5 16:24
C++寻找文本这么快 能写成dll易调用吗
作者: jing2020yi    时间: 2023-1-5 16:43
谢谢分享~
作者: ‖陌颜の小溪"    时间: 2023-1-5 17:00
666666666666
作者: 梅钏酷紫    时间: 2023-1-5 17:11
看看
作者: mafeng1989    时间: 2023-1-5 17:11
支持!谢谢分享!
作者: 80554326    时间: 2023-1-5 17:23
666666666666666666666
作者: l7518597    时间: 2023-1-5 17:23
感谢分享
作者: vSpear    时间: 2023-1-5 17:45
支持开源!支持楼主
作者: 283688410    时间: 2023-1-5 18:26
谢谢楼主开源
作者: 猪猪侠去哪了    时间: 2023-1-5 18:28
功德无量
作者: 阿龙    时间: 2023-1-5 18:35
~夜雨 发表于 2023-1-5 16:24
C++寻找文本这么快 能写成dll易调用吗

代码是开源的编译时选lib就是导出dll,但是需要易语言调用的话你需要加exteen "c" 然后再把函数名改成英文,当然也可以封装成支持库会好些
作者: skyflb    时间: 2023-1-5 19:45
c++仿易语言跨平台中文命令库,用易写cpp
作者: 熊猫巴布    时间: 2023-1-5 20:08
希望楼主赶快好起来, 身体要紧.
另外问下楼主,  新手学C++多久能学会封装支持库给易语言调用啊
作者: luojunhu    时间: 2023-1-5 20:11
66666666666666666666666666666666
作者: 老二天天干活    时间: 2023-1-5 20:26
支持开源!支持楼主!
作者: hgy19880905    时间: 2023-1-5 21:03
,如果您要查看本帖隐藏
作者: feiyu2005    时间: 2023-1-5 21:18
楼主牛啊!这个很强大,多谢分享。
作者: 熊猫巴布    时间: 2023-1-5 21:23
编译不了啊,楼主..
想用C++写dll给易语言使用.
VS studio设置太多了,看着头大,    不知道楼主能不能做个简单的设置教程
编译过不了.png

作者: 一尘不染    时间: 2023-1-5 21:24
这波是真有机会把易移植到C++直接支持64了
作者: 宁氏    时间: 2023-1-5 21:37
支持开源~!感谢分享
作者: cwgwww    时间: 2023-1-5 21:46
谢谢分享!来学习下
作者: 794229345    时间: 2023-1-5 23:18
膜拜大佬!大佬牛B!
作者: 执法官黑老大    时间: 2023-1-5 23:23
通用对话康???
作者: Sky__Mo    时间: 2023-1-5 23:31
YYDS
作者: 无名d晓峰    时间: 2023-1-5 23:36
大佬牛逼,大佬威武
作者: dlq663    时间: 2023-1-5 23:43
支持开源!支持楼主
作者: OUYB    时间: 2023-1-5 23:57
这波是真有机会把易移植到C++直接支持64了
作者: yuetao816    时间: 2023-1-6 00:10
222222222222222222222
作者: 396384183    时间: 2023-1-6 00:12

学习一下
作者: 阿龙    时间: 2023-1-6 01:01
熊猫巴布 发表于 2023-1-5 21:23
编译不了啊,楼主..
想用C++写dll给易语言使用.
VS studio设置太多了,看着头大,    不知道楼主能不能做个简 ...

编译设置/utf-8
作者: 叛逆的心    时间: 2023-1-6 01:56

支持开源!支持楼主
作者: key    时间: 2023-1-6 01:57
        感谢分享,很给力!~
作者: yaoyao2011    时间: 2023-1-6 07:27

支持开源!支持楼主
作者: singlecolor    时间: 2023-1-6 07:38
谢谢楼主,学习下!
作者: 896006129    时间: 2023-1-6 08:25
新旅程即将开始,我们将都是历史的见证者
作者: 一指温柔    时间: 2023-1-6 08:37
感谢分享
作者: drogan2    时间: 2023-1-6 08:52
楼主辛苦了,谢谢楼主,感谢楼主分享,楼主好人一生平安!!!
作者: shj0205    时间: 2023-1-6 09:25
感谢分享!
作者: shuaier    时间: 2023-1-6 09:36
感谢分享,很给力!~
作者: ttuzi    时间: 2023-1-6 09:42
感谢分享
作者: wlsk888    时间: 2023-1-6 10:01
感谢分享,学习学习
作者: kyo9766    时间: 2023-1-6 10:15
这波是真有机会把易移植到C++直接支持64了
作者: sadamu999    时间: 2023-1-6 10:58
感谢分享,很给力!~
作者: huzpsb    时间: 2023-1-6 11:00
谢谢分享 这就开嫖
作者: Dosnow    时间: 2023-1-6 11:11
这波是真有机会把易移植到C++直接支持64了
作者: nenxifugebi    时间: 2023-1-6 11:35
正在学习C++  非常感谢
作者: jtucar    时间: 2023-1-6 12:11
感谢分享,很给力!~




欢迎光临 精易论坛 (https://bbs.125.la/) Powered by Discuz! X3.4