小编bli*_*ard的帖子

结构上的ORDER BY的C++实现

我在这里和其他网站上搜索了很多,但我还没有找到令人满意的东西.

我需要的是一个非常简单的任务 - 基本上在c ++中构造ORDER BY运算符.这意味着我有多个不同数据类型成员的结构,我需要一个比较器,成员和订单可配置.这是我的伪代码想法:

comparator.add(&MyStruct::member1, std::less);
comparator.add(&MyStruct::member2, std::greater);
std::sort(my_vector.begin(), my_vector.end(), comparator);
Run Code Online (Sandbox Code Playgroud)

我得到按member1排序的数据,如果它等于member2决定,依此类推.

我在stl和模板方面不太好,但我可以阅读并破译一些代码并发现这是非常合适的解决方案:https://stackoverflow.com/a/11167563

不幸的是,在我的工作中,我必须使用带有错误的32位编译器的c ++ builder,拒绝编译这个正确的代码.它确实 支持c ++ 11几乎没有任何东西,它可以提升1.39.

有没有人可以使用我的资源为我提供任何解决方案?先感谢您

编辑:

我得到了非常专业的解决方案,其中包含我所知道的难以编写的比较运算符,而且这些运算符在这里不起作用.我在我的问题中错过了这个.我的结构至少有15个成员,正如我所写,我需要经常更改成员/列的单独排序方向(asc,desc).我也需要经常更改已排序成员的集合,就像在sql中按运算符顺序一样.我也不能使用类似stable_sort的东西,因为我只是为某些类的OnCompare事件编写比较器.

c++ sorting boost stl compare

9
推荐指数
1
解决办法
424
查看次数

Yocto - 从 -dev 包中排除文件

FILES_${PN}-dev我在将一些头文件从自定义开发内部包中移动时遇到了很大的问题。

在 OpenEmbedded 文档中明确指出“不实际支持从打包中显式排除文件”。

我试过这个:

FILES_${PN}-dev = ""
PACKAGES += "${PN}-dev-internal"
FILES_${PN}-dev-internal = "${includedir}/<my-pattern>.h"
FILES_${PN}-dev = "<original-content>"
Run Code Online (Sandbox Code Playgroud)

但无论如何,第一个定义的包似乎首先捕获。

有没有已知的解决方法?除了在两个包内容中明确命名所有内容之外,这是非常非常不可取的。

openembedded bitbake yocto

1
推荐指数
1
解决办法
2016
查看次数

标签 统计

bitbake ×1

boost ×1

c++ ×1

compare ×1

openembedded ×1

sorting ×1

stl ×1

yocto ×1