小编Lau*_*dou的帖子

找到已安装的npm软件包的版本

如何找到已安装的node.js/npm 的版本?

这将打印npm本身的版本:

npm -v <package-name>
Run Code Online (Sandbox Code Playgroud)

这打印出一个神秘的错误:

npm version <package-name>
Run Code Online (Sandbox Code Playgroud)

这将在注册表上打印包版本(即可用的最新版本):

npm view <package-name> version
Run Code Online (Sandbox Code Playgroud)

我如何获得已安装的版本

package node.js npm

2037
推荐指数
27
解决办法
108万
查看次数

C++ 0x标准中export关键字的最佳解释是什么?

我知道在最初的C++ 0x标准中有一个叫做的功能export.

但是我找不到这个功能的描述或解释.该怎么办?另外:哪个编译器支持它?

c++

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

Visual C++ 2010中的预处理程序指令缩进

我经常发现自己处于需要缩进预处理程序指令的情况,例如其他代码(例如#if缩进if).它似乎是合法的,这是常识,它有时是一件好事,但Visual不会让它变得容易.

有没有办法阻止Visual C++ 2010编辑器每次我无辜地按下时将代码粘贴到左边#?并且不要使用自动缩进(CTRL + K,CTRL + F)来破坏预处理程序指令缩进?或者更好的是,像其他一样处理预处理器指令?

c++ indentation visual-c++-2010 c-preprocessor preprocessor-directive

19
推荐指数
3
解决办法
2784
查看次数

如何处理在被取消的构建中随机损坏的预编译头文件?

我使用Visual C++ 2012和一个大量使用预编译头的项目.如此沉重以至于臭名昭着/ Zm开关正在使用中.

当我取消正在进行的构建时,我有时会在下一个构建中出现此错误:

error C1852: 'foo.pch' is not a valid precompiled header file
Run Code Online (Sandbox Code Playgroud)

十分之九,事情会顺利进行,但是当发生这种情况时,我必须找到.pch并在重新启动构建之前手动删除它.

这让我有点恼火.有没有办法防止这种情况发生?来自微软的补丁?或者强制Visual删除.pch并在问题发生时自动重新启动构建的方法?或者其他一些我没想过的解决方案?

编辑:这是我正在运行的Visual版本:

Microsoft Visual Studio Professional 2012
Version 11.0.61030.00 Update 4
Run Code Online (Sandbox Code Playgroud)

c++ pch visual-c++ visual-c++-2012

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

无法正确访问NODE_ENV环境变量,这是node.js的错误吗?

我正在访问NODE_ENV环境变量以打开node.js服务器中的一些调试功能.它曾经像魅力一样工作,但现在我面临一些非常奇怪的东西.这是我正在做的事情:

// check if the env var is OK
console.log(process.env.NODE_ENV);

// WTF???
if (process.env.NODE_ENV == "development") {
    console.log("ok");
}
else {
    console.log("nope");
}

// sanity check
var str = "development";
if (str == "development") {
    console.log("ok");
}
else {
    console.log("nope");
}
Run Code Online (Sandbox Code Playgroud)

这就是我得到的:

development
nope
ok
Run Code Online (Sandbox Code Playgroud)

怎么可能?我是否面临node.js中的错误?如果没有,我做错了什么?

编辑

按照下面的Pointy的评论,如果我将初始日志更改为console.log("[" + process.env.NODE_ENV + "]");:

]development
nope
ok
Run Code Online (Sandbox Code Playgroud)

那么,一个已知问题可能呢?

javascript node.js

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

从命令行禁用msvsmon超时

由于Visual Studio 2010的msvsmon工具,我正在定期进行远程调试.我曾经在选项屏幕中将超时设置为零,因为我只想让工具继续运行直到我完成它:

在此输入图像描述

这工作正常,但我厌倦了每天这样做,我正在尝试从脚本,使用适当的命令行开关:

msvsmon.exe /timeout:0
Run Code Online (Sandbox Code Playgroud)

但没有雪茄:

在此输入图像描述

我可以通过设置一个可笑的长超时来解决这个问题,但我只是在检查:是否有一种正确的方法可以从命令行禁用此超时?或者可能使用注册表项?

remote-debugging visual-studio-2010 visual-studio visual-studio-2013

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

合并Visual C++ 2012项目过滤器时如何防止系统冲突?

将新文件添加到Visual C++项目时,IDE会将它们添加到两个位置:

  • 主项目文件(例如myproject.vcxproj)
  • 项目"过滤器",解决方案资源管理器的虚拟路径的存储库(例如myproject.vcxproj.filters)

合并文件添加对主项目文件来说不是问题,但它通常是过滤器冲突的根源.问题来自于IDE总是在过滤器列表的最末端添加新元素.

为了说明这个问题,我们假设过滤器最初看起来像这样:

1 <ClInclude Include="fs\path\oldFile1.h">
2   <Filter>virtual\path</Filter>
3 </ClInclude>
4 <ClInclude Include="fs\path\oldFile2.h">
5   <Filter>virtual\path</Filter>
6 </ClInclude>
Run Code Online (Sandbox Code Playgroud)

然后程序员A添加newFileA.h并提交,过滤器更新如下:

1 <ClInclude Include="fs\path\oldFile1.h">
2   <Filter>virtual\path</Filter>
3 </ClInclude>
4 <ClInclude Include="fs\path\oldFile2.h">
5   <Filter>virtual\path</Filter>
6 </ClInclude>
7 <ClInclude Include="fs\path\newFileA.h">
8   <Filter>virtual\path</Filter>
9 </ClInclude>
Run Code Online (Sandbox Code Playgroud)

如果程序员B还添加了一个newFileB.h并且在头版本上同步的注释,那么他的本地过滤器副本将如下所示:

1 <ClInclude Include="fs\path\oldFile1.h">
2   <Filter>virtual\path</Filter>
3 </ClInclude>
4 <ClInclude Include="fs\path\oldFile2.h">
5   <Filter>virtual\path</Filter>
6 </ClInclude>
7 <ClInclude Include="fs\path\newFileB.h">
8   <Filter>virtual\path</Filter>
9 </ClInclude>
Run Code Online (Sandbox Code Playgroud)

试图与程序员A的变化同步将系统地引起程序员B的第7-8-9行的合并冲突.这是因为变化恰好发生在完全相同的位置.

有没有办法防止这个问题发生,无论是通过Visual Studio中的配置更改,某些合并工具(最好是 Araxis Merge或Beyond Compare)的特殊选项,还是其他任何东西?

merge merge-conflict-resolution visual-studio-2012 visual-c++-2012

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

如何在 Visual C++ 2015 中的 C++ 转换运算符的尖括号内保留空格?

我想以这种方式格式化我的 C++ 转换运算符:

Class * foo = static_cast< Class * >( bar );
Run Code Online (Sandbox Code Playgroud)

Visual Studio 坚持删除尖括号内的空格:

Class * foo = static_cast<Class*>( bar );
Run Code Online (Sandbox Code Playgroud)

我如何防止它这样做?

casting code-formatting visual-c++-2015

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

在过期日期之前阻止C++库链接

我需要阻止C++静态库在软件评估期的过期日期之后链接.我怎样才能做到这一点?

这应该适用于最新版本的Visual C++编译器(2012年,2010年,理想情况下为2008年).对更多编译器的支持将是一个加分(英特尔,gcc,游戏控制台编译器).能够在到期日期前几天弹出编译器警告也是一个很好的功能.

c++ static-libraries visual-c++

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

Perforce:将搁置的文件从工作区移动到备份

我有一些旧的搁置文件在长期待定的Perforce变更列表中,我可能永远不会提交.我想摆脱那些变更列表,因为它们污染了我的空间,但我不想失去一切,以防万一我需要那些,所以我需要备份.

有没有办法将搁置文件从更改列表移动到文件系统的某个位置?

将搁置的文件从P4V拖放到Windows资源管理器不起作用.命令行工具p4 unshelve似乎没有这样的选项.我还想避免在备份文件之前先取消文件,因为如果这些文件已经通过编辑检出,这将意味着额外的麻烦.

编辑

阅读答案让我意识到我真正想要的是保持这种变更列表安全,但远离视图(即远离我的常规工作空间).我不在乎它是在我的文件系统上还是在其他地方.所以我的问题实际上是:

有没有办法将搁置的文件从工作区移开备份?

backup perforce shelve unshelve

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