首页   注册   登录
sc3263

sc3263

这辈子算是精通不了C++了。
V2EX 第 78718 号会员,加入于 2014-10-27 00:42:13 +08:00
C++不精通者。
sc3263 最近回复了
7 天前
回复了 hua123s 创建的主题 问与答 C++ 动态调用库问题, node.js 调用
@hua123s 可以按照
https://github.com/nodejs/node-addon-api/blob/master/doc/object_wrap.md
里提到的,定义一个继承自 Napi::ObjectWrap 的包装类,在里面实现 C++的代码。
我是直接在包装类对象里存 C++对象的指针。构造时新建 C++对象,析构时删除,再添加需要暴露给 JS 的成员函数,在里面调用 C++的对象对应的方法。
hmmmmmmmm
基本上就是你说的,属性一一对应写映射。
9 天前
回复了 hua123s 创建的主题 问与答 C++ 动态调用库问题, node.js 调用
0. 找个写过 C/C++的同事 /朋友协助你
1. 确定动态库是 x86 还是 x64 的。后续调用的 node.js 运行时需要和它一样
2. 对着 node-addon-api 的例子改一下。
https://github.com/nodejs/node-addon-examples/tree/master/1_hello_world/node-addon-api
binding.gyp 里加要链接的动态库。
hello.cc 里加对应的调用。基本上就是增加 Napi::Value MethodName(const Napi::CallbackInfo& info)的函数,把 info 中的入参解析出来,调用对应的 C++函数,拿到返回值,再包成 Napi::Value 返回。最后在 Napi::Object Init(Napi::Env env, Napi::Object exports)里把写好的函数 set 到 exports。
js 中的用法参照 hello.js
3. 无尽的查 node addon api 文档+debug
4. 祈祷你的动态库调用里没有啥需要注册回调的。不然又是另外一场噩梦。
这样应该可以出个凑合能用的版本。所有对动态库方法的调用都是在主线程中完成的。要是动态库方法会执行很长时间的话,会阻塞主线程。
推荐 electron
用 Qt 的话,推荐 Qt 内嵌 cef,不要直接用 Qt WebEngine,问题很多。多显卡环境下经常使用错误的显卡渲染模式,高 DPI 下缩放比例异常,还有各种不明显的坑。
还有一种情况,开发者根据当前主流的配置进行更有针对的优化,而这个优化往往会占用更多看得到的资源。假如有 100M 的数据需要经常查询。在大家都只有几十 M 内存的时候,只能把数据放磁盘上,内存里放索引和缓存。但在大家内存都上 G 的时候,就会考虑把数据全部放内存里。
2018-11-21 10:46:03 +08:00
回复了 alwayshere 创建的主题 程序员 Windows 有没有类似于 chrome 时时抓包当前 http 请求的软件?
可以试一下 Charles
@hakono Qt 在 windows 下允许用非主线程创建 QApplication 对象并执行事件循环。在 mac 下这样做会出错。
Qt 对界面相关的的操作只能在主线程中完成。你可以试一下这个做法: https://stackoverflow.com/questions/11033971/qt-thread-with-movetothread
2018-06-14 15:06:44 +08:00
回复了 nutcloud 创建的主题 酷工作 [上海] --坚果云诚招高级后端开发工程师
@sheldor 收到了。谢谢~
2018-06-14 10:55:19 +08:00
回复了 nutcloud 创建的主题 酷工作 [上海] --坚果云诚招高级后端开发工程师
@sheldor 卡是指客户端卡?还是指上传下载比较慢?还是指别的?
2018-03-28 10:24:18 +08:00
回复了 with2heads 创建的主题 程序员 电气工作者想转行软件,各位有没有自学的指导?
我也是电气转过来的。不过是大学里面自学的。
在杭州的话,推荐你学 java。杭州还是 java 好找工作。
找已经转软件开发的同学(电气行业转软件开发的人不要太多)指导你。不要看视频,直接看书对着例子抄代码理解。后续可以让指导你的人把一部分工作上的需求转给你做,熟悉一下之后就直接找人内推进公司。
写软件没那么难的。
关于   ·   FAQ   ·   API   ·   我们的愿景   ·   广告投放   ·   感谢   ·   实用小工具   ·   772 人在线   最高记录 5168   ·     Select Language
创意工作者们的社区
World is powered by solitude
VERSION: 3.9.8.3 · 9ms · UTC 19:34 · PVG 03:34 · LAX 11:34 · JFK 14:34
♥ Do have faith in what you're doing.