小编Dud*_*arn的帖子

在 Visual Studio 2019 中为 C# 激活自动完成

我有一个问题,我得到了一些关于自动完成的建议(例如,我输入了“Cons”,然后我得到了“Console”的建议),但是这些不能用回车键应用。

通常,建议是完全蓝色的,并在我按“输入”时附加,但现在有一段时间了,建议具有蓝色边框,按“输入”会产生新行。我在哪里可以更改这些设置,以便智能感知在我编写单词时再次完成单词?我已经在 C#-options 中尝试了 IntelliSense-Settings,但这些设置没有改变任何东西

c# intellisense visual-studio

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

FileMode.Create 和 FileMode.Truncate 有什么区别?

我真的不明白:

FileMode.Create 如果不存在则创建一个新文件,如果存在则覆盖一个。

FileMode.Truncate 不会创建新文件,而是删除现有文件的全部内容,因此基本上它也会覆盖文件。

那么为什么甚至有可能这样做:

public void DoStuff()
{
    using (FileStream fs = File.Open(path, FileMode.Truncate, FileAccess.Write, FileShare.None))
    {
        //Do something
    }
}
Run Code Online (Sandbox Code Playgroud)

当它足够做时:

public void DoStuff()
{
    using (FileStream fs = File.Open(path, FileMode.Create, FileAccess.Write, FileShare.None))
    {
        //Do something
    }
}
Run Code Online (Sandbox Code Playgroud)

因为两者基本上都是使用一个空文件向其中写入内容

c#

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

安装 sqlite3 时 node-pre-gyp 出错

在工作中,我们有一个网站(WIP),它获取 SQLite 数据库的一些数据。由于网站使用 Javascript 作为后端,我们尝试在我们非正式托管网站的服务器上安装 sqlite3 以进行演示。

它使用 Windows 7(32 位)和 2 GB RAM。Node 和 NPM 都安装好了,唯一的问题是我们尝试“npm install sqlite3”。这部分运行没有错误,但是当“node-pre-gyp install --fallback-to-build”被执行时,它会导致这个错误:

2778 warn system32@1.0.0 No description
2779 warn system32@1.0.0 No repository field.
2780 verbose stack Error: sqlite3@4.1.0 install: `node-pre-gyp install --fallback-to-build`
2780 verbose stack Exit status 1
2780 verbose stack     at EventEmitter.<anonymous> (C:\Program Files\nodejs\node_modules\npm\node_modules\npm-lifecycle\index.js:301:16)
2780 verbose stack     at EventEmitter.emit (events.js:198:13)
2780 verbose stack     at ChildProcess.<anonymous> (C:\Program Files\nodejs\node_modules\npm\node_modules\npm-lifecycle\lib\spawn.js:55:14)
2780 verbose stack     at ChildProcess.emit (events.js:198:13)
2780 verbose stack     at maybeClose (internal/child_process.js:982:16)
2780 …
Run Code Online (Sandbox Code Playgroud)

node.js npm npm-install

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

抛出异常时退出循环是否可以?

我在 Hackerrank.com 上解决了一个任务,问题是这样的:

你有一个数组。此数组包含数字。
现在输入两个数字:

  • 第一个描述一个总和
  • 第二个描述了你加在一起的索引数量(序列长度)

最后你会得到总和是你定义的数字的序列数量

例如:

你的数组是 [1, 2, 3, 4],你的总和是 3,你的序列长度是 2。
现在你取前两个索引并输出总和:[1, 2] = 3。
这等于你的总和,所以现在你已经找到了一个序列。
下一个序列是 [2, 3] = 5。这不等于 3,所以你的序列计数器保持 1。
最后一个序列是 [3, 4] = 7。这也不等于 3,最后,你找到了一个序列。

我为此编写了这段代码:

static int GetSequences(List<int> s, int d, int m)
{
    //m = segment-length
    //d = sum

    int count = 0;
    int j = 0;
    int k = 0; 

    do
    {
        try
        {
            List<int> temp = new List<int>();

            for (int i = 0; i < m; i++) …
Run Code Online (Sandbox Code Playgroud)

c# arrays

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

有没有办法在 c# 中注释掉字符串的一部分?

我在这里得到了这个代码部分:

label1.Text = $"Score: {score} | Speed: {speed}";
Run Code Online (Sandbox Code Playgroud)

这显示了我制作的突破游戏的得分和速度。现在我不需要速度,我想知道是否有办法注释掉字符串的一部分。

我当然可以

label1.Text = $"Score: {score}";// | Speed: {speed};
Run Code Online (Sandbox Code Playgroud)

但也许还有另一种方法,因此可以更轻松地删除评论。就像是

label1.Text = $"Score: {score} #comment | Speed: {speed} #endcomment";
Run Code Online (Sandbox Code Playgroud)

或者

label1.Text = $"Score: {score} #/*| Speed: {speed} #*/";
Run Code Online (Sandbox Code Playgroud)

所以更容易阅读和更改

c# string comments

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