小编Pac*_*ac0的帖子

在C#中,int必须是正数,负数还是零?

TL; DR;

C#语言是否确保int必须具有以下属性中的一个且仅具有以下属性?

  1. 严格大于 0
  2. 严格不到 0
  3. 等于 0

准确地说,这个断言是否保证永不失败?

public void CheckFacts(int n) 
{
    int trueFacts = 0;

    if (n > 0) trueFacts += 1;
    if (n == 0) trueFacts += 1;
    if (n < 0) trueFacts += 1;

    Assert.AreEqual(trueFacts, 1); 
}
Run Code Online (Sandbox Code Playgroud)

后续问题:如果是,对于各种整数类型是否也是如此?(uint,long,ulong,sbyte,byte,short,ushort,...)


对于那些可能认为这个问题有点偏离的人,不要忘记计算机数字可能会令人惊讶.

例如,这不是double必须为正,负或零的情况.它可以是NaN,+0.0或者-0.0,3个值将导致上述断言失败.


编辑:

有人说我不知何故花时间写这个问题,但不是一分钟看规格.我实际上花了很多时间阅读:https://msdn.microsoft.com/fr-fr/library/system.int32(v = vs1010).aspx,因为int它应该是别名System.Int32.老实说,我不确定我的问题是否明确.另外,我彻底搜索了关于SO的问题,因为我认为有人必须先问过这个问题.对不起,如果这个问题对某些人来说显而易见,那对我来说就不是了.

c# int language-lawyer

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

创建预构建事件后,出现错误“未为Exec任务提供所需参数Command的值”

我向Visual Studio 2017项目添加了一些预构建脚本。

预构建脚本

powershell.exe -ExecutionPolicy ByPass -NoProfile -NonInteractive -File "./myscript.ps1"
Run Code Online (Sandbox Code Playgroud)

这只是一个在控制台中输出一些信息的脚本。

无论是直接在我的Powershell控制台中启动脚本还是从构建事件中启动脚本,脚本都可以正确执行(我可以在VS的“构建输出”面板中看到正确的输出)。


执行后,构建失败并出现一个错误:

没有为“ Exec”任务提供所需参数“ Command”的值


我试图将问题减少到最小的“ ./myscript.ps1”,以向您展示我的问题,并且任何脚本(即使是空脚本)都出现了问题!

同样,无论PS脚本是什么,它都能正确输出输出。


为什么我的构建失败,并且在构建之前仍在运行脚本的同时该如何解决?

post-build-event pre-build-event visual-studio-2017

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

在 javascript right-left 和 left-right 中为 const 赋值

我正在查看一个反应代码库,在那里我看到了这种类型的代码片段

1

const SomeComponent= function(props) {
      const{
        child,
        style,
        disable,
        ...otherParam
      } = props;

      return(someOtherComponent);
    }
Run Code Online (Sandbox Code Playgroud)

是不是不同于

2

const SomeComponent= function(props) {
      const props = {
        child,
        style,
        disable,
        ...otherParam
      };

      return(someOtherComponent);
    }
Run Code Online (Sandbox Code Playgroud)

或者

3

const SomeComponent= function(props) {
      props = {
        child,
        style,
        disable,
        ...otherParam
      };

      return(someOtherComponent);
    }
Run Code Online (Sandbox Code Playgroud)

我相信3次片断受让人价值已有param来作为函数的参数,而23可能是一样的,这是正确的认识?

如果不是,那么有人可以向我解释这种分配的相关逻辑和正确的技术术语到这些将值分配给常量的方法吗?

javascript constants destructuring variable-assignment ecmascript-6

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

如何更改号码的最后5位数字?

我不\xe2\x80\x99t 知道该号码怎么可能有最后5 位数字...我将非常感谢您的帮助!

\n
const num = 1666297292886;\n//result \n1666297200000\n
Run Code Online (Sandbox Code Playgroud)\n

javascript

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