1
nightwitch 2020-03-10 10:26:08 +08:00 1
好用,坑多。
|
2
newmlp 2020-03-10 11:15:40 +08:00
Qt 不就是 C++写的跨平台框架吗
|
3
augustheart 2020-03-10 11:26:19 +08:00
qt 不就是 c++的么……不用 qt 你们用啥做界面?
大致理解了一下意思,你们的内核不使用 qt ? 至于 boost……如果你想要拿它替代 qt 这种大而全的框架是做不到的。boost 充其量就是个标准库++。而且一旦用了 boost,啧啧,就和传染病似的…… |
4
wangsongyan 2020-03-10 11:28:47 +08:00 1
不让用 Qt,要改成 C++的
|
5
augustheart 2020-03-10 11:29:18 +08:00
@augustheart 哦,我瞎了,没看到无界面三个字……
|
6
shawnsh 2020-03-10 11:53:49 +08:00 via Android
肯定有坑,确实比 qt 的好一些,如果不上界面的话
|
8
wbing 2020-03-10 12:28:18 +08:00 via iPhone
文件系统、字符、线程、定时器、这些 STL 本身就有,交叉编译 boost 估计问题不少,
|
9
terryching 2020-03-10 12:36:25 +08:00 via Android
可以考虑下 POCO,容易理解一点,当然坑也不少
|
10
no1xsyzy 2020-03-10 12:36:54 +08:00
@mnssbe 你仍然可以以 GPL 提供给你的用户,因为你很放心你的用户不太理解自己有再分发的权利,即使你只需明确声称自己采用 GPL 发布,但听不懂的人就是听不懂。另一种情况是,“我买的东西为什么要免费再送给别人?”。
|
11
liukun1212 2020-03-10 12:49:08 +08:00
不建议用 boost,坑太多了。出了问题无从下爪,折腾的时间都够自己造轮子了。
|
12
Chenamy2017 2020-03-10 13:19:37 +08:00
直接上标准 C++,有些轮子造起来可能比你用他们的还香。
|
13
zjsxwc 2020-03-10 13:31:17 +08:00
换 golang 不是跟简单
|
14
Harv 2020-03-10 13:34:33 +08:00
我跟你们讲,Qt 商业化版权费贼贵。
|
16
tomychen 2020-03-10 13:50:57 +08:00
如果不是重度依赖,这种跨平台+硬件,最好还是标准撸
|
17
auto8888 OP @terryching 粗略看了一下这个库貌似简单点,boost 全是模板,好难。比如网上一个获得文件夹大小的代码
namespace fs = boost::filesystem; boost::uintmax_t dir_size(const fs::path &p) { return std::accumulate( boost::make_transform_iterator(&fs::file_size, fs::recursive_directory_iterator(p)), boost::make_transform_iterator(&fs::file_size, fs::recursive_directory_iterator()), static_cast<boost::uintmax_t>(0)); } 编译出错了,根本不知道怎么改 |
18
mnssbe 2020-03-10 15:41:01 +08:00
|
19
wangxkww 2020-03-10 16:39:27 +08:00
Qt 的 LGPL 为啥商用闭源就需要授权?
|
20
paoqi2048 2020-03-10 16:49:33 +08:00
你们公司该不会是害怕违反许可协议吧? Qt 有 LGPL 的呀,只要不对源码进行二次开发就没问题
|
21
leon0903 2020-03-10 17:08:35 +08:00
为什么不用 qt 呢? qt 不也是 C++么。
|
22
xsen 2020-03-10 17:32:11 +08:00
对于 Qt,只要不修改源代码并且动态链接,是完全可以发布编译好的库的,也可以和闭源软件一同发布,这是没有问题的。
在这个用例之下,LGPL 的重点在于: 1、不修改源码 2、动态链接 3、不修改 Qt 库的分发版权,并提供原有的版权声明 |
23
laminux29 2020-03-10 17:33:49 +08:00
不考虑性能问题,为啥不用 javafx ?开发效率比 C++高一个数量级。
如果考虑性能,一定要用 C++,建议界面 wxWidgets,通信 thrift,其他小工具用 boost。 |
24
hhhsuan 2020-03-10 17:38:11 +08:00 via Android
Qt 不是做界面的吗,跟 boost 这种通用库有啥可比性?
|
25
livepps 2020-03-10 17:41:20 +08:00 via Android
boost 你用到的接口加一层封装,如果出问题,就自己重写实现,一般也不会出什么问题。
|
26
turi 2020-03-10 17:51:25 +08:00
boost 基本上都有例子吧,为什么要去网上搜例子呢?
boost 更新迭代快,看官方例子就行了。 |
31
auto8888 OP @turi 确实,不过有一点不爽的是,boost 一定要 try catch 吗,比如就一个 boost::filesystem::remove 都能把整个程序崩了,凭啥有那么高优先级啊,返回 false 不就完了么
|
32
no1xsyzy 2020-03-11 15:20:15 +08:00
@mnssbe 其实说真的,如果有哪块领域,因为发个源代码就能有差的,那你也根本不差钱买 Qt 商业授权。
其他纯粹自个儿揪自个儿头发——自找秃的。 多少免费软件就 TM 喜欢搞这种事,别人拿去卖了就大呼小叫,纯粹自己多事儿,跟你、你的真正的用户,有关系吗?别人坑了多少傻子钱,那些钱本来难道会进你腰包吗?还可以说是对经济学和所有权概念认识不清,没那本事排他就别主张独占。 我喜欢的故事就是那个,小偷偷了神父的钱,警察抓到了,神父却说 “那是我送他的”。 |
33
ysc3839 2020-03-11 17:19:21 +08:00
@auto8888 C++ 标准库里也有很多是会 throw 的呀?
另外,标准库里面的 filesystem 可以自己传个变量进去获取错误,不会 throw。 https://zh.cppreference.com/w/cpp/filesystem/remove |
36
LANB0 2020-03-11 18:18:45 +08:00
C++17 不就差不多够用? boost 神坑
|