小编LRF*_*LEW的帖子

在jar文件中访问文件?

我需要能够访问存储在已编译的jar文件中的文件.我已经想出了如何将文件添加到项目中,但是如何在代码中引用它?我如何将文件从jar文件复制到用户硬盘上的某个位置?我知道有很多方法可以访问文件(FileInputStream,FileReader等),但我不知道如何查看自己.

java jar file

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

更改函数参数的值?

这可能看起来像一个愚蠢的问题,但这个函数实际上会影响变量bool(我将如何使用它有更大的背景,但这基本上是我不确定的)?(我具体询问java)

void truifier (boolean bool) {
    if (bool == false) {
        bool = true;
    }
}
Run Code Online (Sandbox Code Playgroud)

java function

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

如何从Qt Designer/.ui文件向QComboBox添加项目数据

我正在使用Qt Designer(实际上,Qt Creator,但特别是从Qt Designer派生的部分),我在一个带有常量项目列表的对话框中添加了一些QComboBox项目.我需要将组合框中的项映射到字符串(与显示的字符串不同).我提出的最好的想法是使用QComboBox :: itemData函数从所选项目中获取所需的字符串,但是我无法将相关的字符串添加到项目中.我看了整个设计师,还没有看到添加用户数据的方法.那里有一个我想念的吗?我也愿意直接编辑.ui文件的XML以在需要时添加属性,但我无法弄清楚属性名称是什么.我可以在这里使用吗?目前我在代码中添加数据,但它似乎不是我的正确解决方案.

qt designer qt-designer qcombobox

7
推荐指数
2
解决办法
8010
查看次数

为什么添加 xorps 指令使这个函数使用 cvtsi2ss 并添加 ~5x 快?

我正在使用 Google Benchmark 优化一个函数,并遇到了我的代码在某些情况下意外变慢的情况。我开始试验它,查看编译后的程序集,并最终想出了一个最小的测试用例来展示这个问题。这是我想出的展示这种放缓的程序集:

    .text
test:
    #xorps  %xmm0, %xmm0
    cvtsi2ss    %edi, %xmm0
    addss   %xmm0, %xmm0
    addss   %xmm0, %xmm0
    addss   %xmm0, %xmm0
    addss   %xmm0, %xmm0
    addss   %xmm0, %xmm0
    addss   %xmm0, %xmm0
    addss   %xmm0, %xmm0
    addss   %xmm0, %xmm0
    retq
    .global test
Run Code Online (Sandbox Code Playgroud)

此函数遵循 GCC/Clang 的 x86-64 函数声明调用约定extern "C" float test(int);注意注释掉的xorps指令。取消注释此指令可显着提高函数的性能。用我的机器有i7-8700K,谷歌基准测试显示的功能测试它,而不xorps指令需要8.54ns(CPU),而功能xorps指令需要1.48ns。我已经在具有不同操作系统、处理器、处理器世代和不同处理器制造商(英特尔和 AMD)的多台计算机上对此进行了测试,它们都表现出类似的性能差异。重复addss指令使减速更加明显(在某种程度上),并且这种减速仍然使用此处的其他指令(例如mulss)或什至混合指令发生,只要它们都%xmm0以某种方式依赖于值。值得指出的是,只调用xorps 每个函数调用会导致性能提升。使用循环对性能进行采样(如 Google Benchmark 所做的那样)和xorps循环外的调用仍然显示出较慢的性能。

由于这是一种专门添加指令可以提高性能的情况,因此这似乎是由 CPU 中的一些非常低级的东西引起的。由于它发生在各种 CPU …

sse x86-64 cpu-architecture clang microbenchmark

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

如何使路径名与不同的操作系统兼容?

我曾经知道它,但我知道在java中有一种方法可以确保路径在所有操作系统中都有效(Windows使用与基于Unix的系统不同的"/"系统).如何创建适用于所有系统的文件路径名,我该怎么做?

编辑:我不确定这是否是我的意思,但我认为文件路径最终将是相对的.

另外,File.separator和File.pathSeparator之间有什么区别?

java path relative-path

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

如何将(字面)"\ C"作为回归?

我正在尝试使用String.replaceAll(regex, repl)正则表达式文字"\ C"(不是转义序列),但"\\C"返回正则表达式错误,"\\\\C"创建"\\ C",并"\\\C"使其尝试生成转义序列.我该做什么?

编辑:这是我得到的错误:

java.util.regex.PatternSyntaxException: Illegal/unsupported escape sequence near index 1
\C
 ^
    at java.util.regex.Pattern.error(Pattern.java:1713)
    at java.util.regex.Pattern.escape(Pattern.java:2177)
    at java.util.regex.Pattern.atom(Pattern.java:1952)
    at java.util.regex.Pattern.sequence(Pattern.java:1834)
    at java.util.regex.Pattern.expr(Pattern.java:1752)
    at java.util.regex.Pattern.compile(Pattern.java:1460)
    at java.util.regex.Pattern.<init>(Pattern.java:1133)
    at java.util.regex.Pattern.compile(Pattern.java:823)
    at <My Class>.<My Function>(<My Class>.java:<Line>)
Run Code Online (Sandbox Code Playgroud)

等.

编辑:我发现我最大的问题涉及意外返回原始字符串:P.我现在有工作:)

java regex

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