小编Kev*_*eid的帖子

编写包含字符串并可在常量中使用的 Rust 结构类型

我正在开始使用 Rust。我想要一个包含(除其他外)字符串的结构:

\n
#[derive(Clone, Debug)]\nstruct Foo {\n    string_field: &str,  // won't compile, but suppose String or Box<str> or &'a str or &'static str...\n}\n
Run Code Online (Sandbox Code Playgroud)\n

我希望能够声明它的constants 或s:static

\n
static FOO1: Foo = Foo {\n    string_field: "",\n};\n
Run Code Online (Sandbox Code Playgroud)\n

希望能够让它包含在运行时构造的字符串:

\n
let foo2 = Foo {\n  string_field: ("a".to_owned() + "b").as_str(),\n};\n
Run Code Online (Sandbox Code Playgroud)\n

我可以添加一个生命周期参数,Foo以便我可以声明字符串引用具有相同的生命周期。这很好,只是它似乎需要为包含a的所有内容提供显式生命周期参数Foo,这意味着它使我的程序的其余部分变得复杂(甚至是不关心是否能够使用常量表达式的部分)。

\n

我可以写

\n
enum StringOfAdequateLifetime {\n    Static(&'static str),\n    Dynamic(Box<str>),  // or String, if you like\n}\nstruct Foo {\n    string_field: StringOfAdequateLifetime,\n}\n
Run Code Online (Sandbox Code Playgroud)\n …

rust

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

有没有什么好方法可以将二进制数据"编码"成合理的单词并再次返回?

给你一个非常简单和坏的例子.数据分为4位.16个可能的数字对应于前16个辅音.您添加随机元音以使其可发音.所以"08F734F7"可以成为"ba lo ta ku fo go ta ka".你可以加入一些音节并添加标点符号和大写字母,它可以成为"Balo ta kufogo,Taka?" 看起来像一个似是而非的语言.

为了说清楚,我不是想保护二进制数据.

我想在压缩和加密我的(UTF-8)纯文本日记后使用它.生成的二进制数据看起来应该是随机的.我需要将这些数据转换为看似合理的语言,并能够将其还原.我打算在纸上打印"语言"并制作一本自定义书.

所以我正在寻找的是将随机数据转换为可读的合理单词的最佳方法.好的,我的意思是最大的字母比例(同时使它看起来像一个真正的语言).在我的例子中,每个字母正好是2位.或者一个字节的4个字母.

encoding

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

Xcode 4:我的iPhone项目已成为Mac OS项目......我无法改变这一点

我有两个在Xcode 3下正确构建的iOS项目,这些iPhone已经在应用程序商店中销售了一段时间.升级到Xcode 4后,Xcode现在认为这些是Mac OS项目!

当我选择项目设置>信息时,它实际上在顶部"Mac OS部署目标"中显示下拉,允许我选择10.4,10.5或10.6!这些都不是Mac OS项目.

在我的构建设置中,Xcode允许我选择32位或64位Intel架构.不是armv6或armv7.

iphone macos ios xcode4

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

C/C++指针是保持绝对内存地址,还是相对于应用程序,还是相对于模块?

例如,如果我在主应用程序中声明一个函数,并通过一个动态加载的库(通过dlopen在Linux LoadLibrary下或在Windows下)使用gotten符号参数(通过dlsymGetProcAddress分别)传递指向它的指针,并尝试调用该函数它会正常工作吗?

如果将指针从一个动态加载的库传递到另 我认为如果指针至少相对于应用程序而不是相对于模块/库,它应该工作.

另一个例子.我在一个应用程序中声明一个函数并将指针传递给另一个完全独立的应用程序(包括C和C++)(参数字符串或文件i/o - idk如何,只是一个想法)并尝试调用此函数,是否会工作呢?如果指针是绝对的,我可以期待它工作.也许它只是不起作用,因为系统不会因为安全而不喜欢这种交叉呼叫?

c++ pointers memory-address

10
推荐指数
3
解决办法
3479
查看次数

如何在Java Swing TextArea中更改突出显示颜色?并且,更改与突出显示位置对应的文本的开头

问题1:通过使用defaulthighlighter,我可以使聚焦线变为蓝色.现在我想把它换成其他颜色.有谁知道如何更改此参数? - - 解决了

问题2:pos是我想要突出显示的子串的起始索引.我用setCaretPosition(pos); 更新显示内容.但它总是出现在窗口的底部.我希望它在顶部.谁能告诉我如何处理?

我使用一个演示来显示我的问题:

import java.awt.Color;
import java.net.MalformedURLException;

import javax.swing.JFrame;
import javax.swing.JScrollPane;
import javax.swing.JTextArea;
import javax.swing.SwingUtilities;
import javax.swing.text.BadLocationException;
import javax.swing.text.DefaultHighlighter;

public class Test {
    public static void main(final String[] args) throws MalformedURLException {
        SwingUtilities.invokeLater(new Runnable() {

        @Override
        public void run() {
            try {
                init();
            } catch (BadLocationException e) {
                // TODO Auto-generated catch block
                e.printStackTrace();
            }

        }
    });
}

private static void init() throws BadLocationException {
    JFrame frame = new JFrame();
    final JTextArea textArea …
Run Code Online (Sandbox Code Playgroud)

java swing jtextarea swing-highlighter

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

jqplot格式工具提示值

我想在jqplot中有一个工具提示悬停突出显示的东西.问题是我希望它在轴上提供更多细节.因此格式化程序应该是不同的.我无法显示秒数:

有一个JS FIDLE 这里!

我希望时间戳显示为小时:分钟:秒,这将是格式字符串'%H:%M:%S'或'%T'或'%X'.但是我该怎么做?

    highlighter: {
        show: true,
        sizeAdjust: 3,
        //useAxesFormatters: false,
        //tooltipFormatString: '%H:%M:%S',
        formatString: '<table class="jqplot-highlighter"><tr><td>tijd:</td><td>%s</td></tr><tr><td>snelheid:</td><td>%s</td></tr></table>',
    },
Run Code Online (Sandbox Code Playgroud)

tooltip hover format-string jqplot jqplot-highlighter

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

是否应针对伽玛调整WebGL着色器输出?

WebGL片段着色器是否应该输出gl_FragColor线性的RGB值,或者为了校正显示伽玛的某些1/γ功率?如果是后者,是否需要使用特定值,或者必须配置完整的应用程序?

WebGL的规范当前不包含"伽马","γ",或有关使用"线性",而GL_ARB_framebuffer_sRGB扩展名是不可用的WebGL.是否有其他适用的规范?如果未详细说明,当前的实现有何作用?一个很好的答案将不胜感激.

(假设我们已经成功加载或程序生成了线性颜色值;也就是说,纹理图像的伽玛不是问题.)

gamma color-space webgl

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

如何解决"git status"未显示的未分级更改

考虑

$ git status
On branch chore/nbsp-fix-2
nothing to commit, working directory clean
$ git rebase -i master
Cannot rebase: You have unstaged changes.
Please commit or stash them.
Run Code Online (Sandbox Code Playgroud)

我如何计算出阻止git进行变基的未分阶段更改?

一些背景:有人设法在名称中添加具有不间断空格(%A0)的文件.这导致了存储库的问题.文件显示为未跟踪,git认为存储库是脏的 - 类似的问题.

我用来纠正问题的技术是在进行这些更改之前创建一个新的分支,并在这些更改之后挑选几个提交.不幸的是我现在处于这种情况.我可以想象有一些其他文件或其他遗留的问题阻止我继续前进.在错误的文件名之后挑选单个提交后,我现在处于这个位置.

我正在寻找解决这个问题的建议.什么是rebase看到这种状态看不到?

git

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

使用jsp和javascript进行异步文件上传(AJAX文件上传)

我正计划上传异步文件.那就是应该将文件上传到jsp或servlet并将内容返回到html/jsp页面而不重新加载原始页面.它应该像AJAX调用一样发生.有没有办法用AJAX或任何其他方式来做到这一点.

javascript forms ajax jsp file-upload

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

gdb地址和"真实"地址之间的区别?

如果我在gdb运行C/C++程序(带-g标志编译后),我审查某些变量,参数...等的地址,然后我运行它GDB之外(使用./)将这些地址是和我在gdb中看到的相同?如果它们不同,它们通常是相似的,还是会有很大差异?

我问这个是因为我有一个缓冲区溢出程序在gdb中有效(有和没有断点),但是当我尝试在gdb之外运行它时它不起作用.

c c++ hex gdb memory-address

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