小编Nik*_*ita的帖子

等号是否会对括号初始化产生影响?例如.'T a = {}'vs'T a {}'

以下是在C++ 11中初始化变量的两种方法:

T a {something};
T a = {something};
Run Code Online (Sandbox Code Playgroud)

我在所有可以想到的场景中测试了这两个,但我没有发现差异.这个答案表明两者之间存在细微差别:

对于变量,我在这些T t = { init };T t { init };样式之间没有太多关注,我发现差异很小,最坏的情况只会导致有关滥用显式构造函数的有用的编译器消息.

那么,两者之间有什么区别吗?

c++ initialization c++11 list-initialization

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

如何让rbenv识别'1.9.3-p***'Ruby版本?

我正在尝试运行一些Ruby项目,项目正在使用.ruby-version文件.该文件仅包含:

1.9.3
Run Code Online (Sandbox Code Playgroud)

我安装了最新的Ruby 1.9.3:

$ rbenv install 1.9.3-p448
Run Code Online (Sandbox Code Playgroud)

但是当我跑的时候ruby --version我得到了

rbenv: version '1.9.3' is not installed
Run Code Online (Sandbox Code Playgroud)

要修复我列出的错误~/.rbenv/versions/,它包含该文件夹1.9.3-p448.我将该文件夹重命名为1.9.3并运行rbenv rehash.这解决了这个问题.

看起来像-p448部分(它是什么意思?补丁?)混淆了rbenv.如何在不手动重命名文件夹的情况下识别正确的1.9.3版本~/.rbenv?我也可以.ruby-version改为1.9.3-p448,但这意味着该项目将取决于我特定的Ruby 1.9.3"补丁",这很糟糕.

ruby rbenv

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

如何使用netrw-C?

我最近偶然发现了 netrw 中的一个功能,称为netrw-C. 来自文档:

SETTING EDITING WINDOW                  *netrw-C* {{{2

One may select a netrw window for editing with the "C" mapping, or by setting
g:netrw_chgwin to the selected window number.  Subsequent selection of a file
to edit (|netrw-cr|) will use that window.

Related topics:         |netrw-cr|
Associated setting variables:   |g:netrw_chgwin|
Run Code Online (Sandbox Code Playgroud)

我已经设法通过手动设置来实现所描述的行为 g:netrw_chgwin,但我无法理解或发现“C”映射是如何工作的。

是的,我可以直接绘制地图

:let g:netrw_chgwin = winnr()
Run Code Online (Sandbox Code Playgroud)

但我很好奇原始netrw-C映射是如何工作的。

有谁知道如何使用文档中描述的“C”映射?

vim netrw

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

如何在 tmux 中强制使用 emacs 样式的状态键?

我在使用 tmux 1.8 时遇到了这个问题:我想将status-keys选项设置为“emacs”,因为我真的不喜欢在 vi 模式下输入命令。但是,将以下行添加到 .tmux.conf 没有任何效果:

set -g status-keys emacs
Run Code Online (Sandbox Code Playgroud)

当 tmux 重新启动时,tmux show-options -g | grep keysemacs但实际行为是 vi 风格的。

问题的根源是$EDITOR环境变量,它vim在我的情况下设置为。文件指出:

status-keys [vi | emacs]
    Use vi or emacs-style key bindings in the status line,
    for example at the command prompt.  The default is emacs,
    unless the VISUAL or EDITOR environment variables are set
    and contain the string `vi'.
Run Code Online (Sandbox Code Playgroud)

显然,当环境变量是“vim”时,它会强制使用 vi 状态键。

尽管环境变量存在,有没有办法覆盖此行为并让提示表现 emacs 风格?我显然可以解决这个问题(比如用其他 env 变量启动 tmux …

tmux

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

标签 统计

c++ ×1

c++11 ×1

initialization ×1

list-initialization ×1

netrw ×1

rbenv ×1

ruby ×1

tmux ×1

vim ×1