小编MSa*_*ers的帖子

位操作,置换位

我试图创建一个循环遍历所有不同的整数,其中最后40位中的10个被设置为高,其余设置为低.原因是我有一个包含40个不同值的地图,我想总结所有不同的方式,其中十个这些值可以相乘.(这只是出于好奇,所以它真的是"bitmanip"-loop感兴趣,而不是这样的总和.)

如果我用例如4比特中的2比特来做这个,那么手动设置全部都很容易,

0011 = 3,
0101 = 5,
1001 = 9,
0110 = 6,
1010 = 10,
1100 = 12,
Run Code Online (Sandbox Code Playgroud)

但是在40个中有10个我似乎找不到有效生成这些方法的方法.我试过,从1023(=二进制的1111111111)开始,找到了一个很好的方法来操纵它,但没有成功.我一直在尝试用C++做这件事,但它确实是感兴趣的一般方法(如果有的话).我做了一些谷歌搜索,但没有成功,如果有人有一个很好的链接,那当然也会受到赞赏.:)

c++ bit-manipulation

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

C++:将L""字符串分配给WCHAR []?

我有一个WCHAR []:

WCHAR foo[200];
Run Code Online (Sandbox Code Playgroud)

我想将值复制到其中:

if (condition)
{
    foo = L"bar";
}
else 
{
   foo = L"odp";
}
Run Code Online (Sandbox Code Playgroud)

做这个的最好方式是什么?

c++ string

4
推荐指数
2
解决办法
9194
查看次数

std :: queue front会将前端元素排除在外吗?

std::queue::front前线元素排除在外?如果不是如何删除它?

c++ queue std

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

比较字符串列表的最佳数据结构和算法是什么?

我想找到符合以下规则的最长的单词序列:

  • 每个单词最多可以使用一次
  • 所有的单词都是字符串
  • 两个字符串sasb级联,如果最后两个字符sa匹配的前两个字符sb.

在连接的情况下,通过重叠这些字符来执行.例如:

  • sa ="torino"
  • sb ="novara"
  • sa concat sb ="torinovara"

例如,我有以下输入文件"input.txt":

诺瓦拉

都灵

维切利

拉文纳

那不勒斯

liverno

messania

诺维利古雷

罗马

并且,根据上述规则输出的上述文件应为:

都灵

诺瓦拉

拉文纳

那不勒斯

利沃诺

诺维利古雷

因为最长的连接是:

torinovaravennapolivornovilligure
Run Code Online (Sandbox Code Playgroud)

有人可以帮我解决这个问题吗?什么是最好的数据结构?

c algorithm directed-graph digraphs data-structures

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

正则表达式需要匹配p标签内的任何内容

我需要一个正则表达式来匹配<p>标签内的任何内容,例如,如果我有一些文本:

<p>Hello world</p>
Run Code Online (Sandbox Code Playgroud)

正则表达式将匹配Hello world部分

regex

4
推荐指数
3
解决办法
2万
查看次数

MySQL商店关系(家庭)树

我需要在php和MySQL中构建一个家谱.我很惊讶缺乏开源可定制的html系列树构建软件,但我离题了.我花了很多时间阅读有关存储MySQL有向图和家谱的知识.一切都对我有意义:拥有一个包含节点(人)的表和一个包含边(关系)的表.

我唯一的问题是我不确定存储不一定相邻的关系的最佳方式,例如兄弟和祖父母的关系.起初我并不认为这会是一件大事,因为我可以无形地强制执行一个解决这些联系的父母(每个人都有父母).

但是,我还需要能够存储可能没有共同父母的关系,例如浪漫的伴侣.我已经读到的一切表明,父子关系,但因为恋爱对象不共享一个共同的父(希望),我不知道如何将它存储在边表.我应该使用不同的表格,还是什么?如果它在同一个表中,我该如何表示?只要我用非熟悉的关系做这件事,我也可以和家人一起做.

总结一下,有三个问题:

  • 我如何表示横向关系?
  • 如果横向关系有一个共同的父母,我该如何存储它?这应该是family表格中存在其他横向关系的标志吗?
  • 如何在孩子离开两个或多个边缘(祖父母)的情况下存储父子关系,但是直接父母不可用?

任何帮助表示赞赏,如果有人对某些javascript/html系列树构建软件有任何建议,那将是非常棒的.

html php mysql directed-graph family-tree

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

确定std :: function的返回类型

我正在编写一个接收std::function对象的模板函数(通过std::bind使用正确的参数调用生成).在这个函数中,我想确定这个函数对象的返回类型.有可能吗?

事实上,我希望模板函数返回相同的类型.你能想到一个优雅的,基于标准的,实现这一目标的方式吗?

就像是:

template <typename T>
T::return_type functionObjWrapper(T functionObject) {
   // ...
   return functionObject();
}
Run Code Online (Sandbox Code Playgroud)

谢谢

c++ templates c++11

4
推荐指数
2
解决办法
2326
查看次数

如何在 Visual Studio 2017 中安装和使用 boost 1.66.0

我一直在寻找有关如何在 Visual Studio 中安装 boost 的教程,但找不到任何教程。你能解释一下这个过程吗?

c++ boost visual-studio

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

如何找到锁定 Linux futex 的 C++ 行?

我遇到了一个用 C++ 编写的大型应用程序的性能问题。该程序仅使用 150% CPU,而服务器是 24 核超线程 EPYC 和其他类似应用程序,可以可靠地达到预期的 4800% CPU 负载。iotop显示几乎没有 I/O,这是预期的。

由于该程序显然既不受 I/O 限制也不受 CPU 限制,我检查strace并发现绝大多数跟踪调用都在等待单个futex. 也就是说:程序中的 50 个线程中有 48 个似乎锁定了同一个 futex,这就很好地解释了为什么 CPU 负载仅勉强超过 100%。

例子:

[pid 11581] futex(0x55acec47a900, FUTEX_WAIT_PRIVATE, 2, NULL <unfinished ...>
[pid 11580] futex(0x55acec47a900, FUTEX_WAIT_PRIVATE, 2, NULL <unfinished ...>
[pid 11579] futex(0x55acec47a900, FUTEX_WAIT_PRIVATE, 2, NULL <unfinished ...>
[pid 11578] futex(0x55acec47a900, FUTEX_WAIT_PRIVATE, 2, NULL <unfinished ...>
[pid 11577] futex(0x55acec47a900, FUTEX_WAIT_PRIVATE, 2, NULL <unfinished ...>
[pid 11576] futex(0x55acec47a900, FUTEX_WAIT_PRIVATE, 2, NULL …
Run Code Online (Sandbox Code Playgroud)

c++ linux futex

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

指定从 std::variant 获取类型的更简洁方法?

我有可以简化为的代码

std::variant<float, int> v[2] = foo();
int a = std::get<decltype(a)>(v[0]);
float b = std::get<decltype(b)>(v[1]);
Run Code Online (Sandbox Code Playgroud)

显然,如果返回错误的变体,这可能会抛出foo()异常,但这不是我的问题。(真正的代码有一个catch)。我的问题是这decltype(a)违反了“不要重复自己”原则。

是否有一种更简洁的方法来初始化 a 和 b,并且如果类型与预期不匹配,仍然会抛出异常?特别是,static_cast<int>(std::get<float>(v))尝试初始化int.

c++ c++17 std-variant

4
推荐指数
3
解决办法
2126
查看次数