小编Bru*_*ant的帖子

如何设置VSCode以使用Visual C++ Build Tools for Windows

使用Visual Studio Code和MSFT自己的C/C++扩展(ms-vscode.cpptools),可以在Windows中轻松编辑C/C++,具有良好的语法突出显示和令人难以置信的智能感知支持,而无需安装Visual Studio.

使用Visual C++构建工具,可以在Windows中进行C/C++编译(尽管如此,make在复杂项目中,缺少和使用MSBuild会导致某些困难).

但是,我无法配置VSCode以使用工具和构建方法转到命令行.有没有人有一个教程,并知道要实现简单集成的主要步骤?

请注意,我问的是使用Visual C++ Build Tools for Windows.

c++ windows visual-studio-code

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

在MVP中,谁应该处理导航?

我相信Presenter是负责处理MVP应用程序导航方面的人.这是真的还是有例外?

mvp

5
推荐指数
2
解决办法
1145
查看次数

Access-Control-Allow-Origin 等于 origin 但浏览器仍然拒绝访问...为什么?

我有一个应用程序(React SPA),它调用应用程序域的不同子域上的一堆服务器,即:

  • 网络应用程序位于foo.bar.com,
  • api.foo.bar.com并与和交谈media.foo.bar.com

访问 时api.foo.bar.com,我从浏览器(无论是 Edge、Chrome 还是 Firefox)收到错误消息,告诉我 origin ( foo.bar.com) 与响应标头的值不同Access-Control-Allow-Origin。然而,通过检查响应,它们是相同的:

在此输入图像描述

(不幸的是,我不得不混淆地址。)

这些应用程序托管在 Kubernetes 上;入口是 NGINX,并且它不提供 CORS(启用 cors 的注释为 false)。这两个应用程序 (apimedia) 都是 Express 应用程序,并且都具有允许特定来源的相同 CORS 配置。

我想知道这是否与重定向有关 - 对media...端点的调用返回一个重定向(302),其位置是一个api...地址。

除此之外,我不知道可能出了什么问题。有些事情是肯定的,因为所有浏览器都同意我的请求应该被阻止(由于来源)。

在所有情况下,我都会多次检查地址是否有拼写错误、结尾的正斜杠等。我使用OPTIONScURL 和 Postman 调用这些端点,使用所有标头或仅使用其中几个标头。他们总是回答正确的地址。


根据要求提供额外信息:

飞行前请求:

OPTIONS /media/1.0.0/rtsp/hls?feedUrl=https%3A%2F%2Flive.monuv.com.br%2Fa1%2F14298.stream%2Fstr27%2Fchunklist.m3u8%3Fm_hash%3DkhV_hCnKG3nhaNCFaYZxBnoMz-99idQVHiQh80ADW78%253D HTTP/2
Host: media.aiXXXXXXXXXXXXXX.com
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:93.0) Gecko/20100101 Firefox/93.0
Accept: */*
Accept-Language: en-US,en;q=0.5
Accept-Encoding: gzip, deflate, …
Run Code Online (Sandbox Code Playgroud)

null redirect cors preflight

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

在 Python 中定义接口

我想知道我们是否可以使用该typing包来生成“接口”的定义,即Python 3中的类/对象。

似乎在 Python 中定义“接口”的常用方法是使用使用 ABC 定义的抽象类,并将其用作类型参数。然而,由于Python是动态类型的,所以完全抽象类型是一个接口,只不过是Python的类型提示。在运行时,我希望所述界面的影响为零。基类可以具有继承的方法,但这不是我想要的。

我的大部分内容都是基于我使用 TypeScript 的经验 - 它使我们能够非常轻松地通过interfacetype关键字定义对象类型,但这些仅由类型检查器使用。

让我用一个例子让我的用例更清楚:

假设我定义一个函数foo如下:

def foo(bar):
    nums = [i for i in range(10)]
    result = bar.oogle(nums)
    return result
Run Code Online (Sandbox Code Playgroud)

foo因此,它是一个期望接收对象实例的方法,该对象必须具有oogle接受整数列表的方法。我想向调用者明确表示,这是 的foo期望bar,但bar可以是任何类型。

python

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

在程序终止后,Task.Run()调度的工作会发生什么?

我正在使用TPL和async/await进行一些测试,并注意到我发现意外的事情:我正在安排使用lambdas和Task.Run运行的工作,例如:

Task.Run(()=>Console.WriteLine("Nice program"));
Run Code Online (Sandbox Code Playgroud)

然后我意识到,如果程序立即返回,则工作永远不会执行.这是任何.NET应用程序(WPF,Forms等)中的预期行为吗?有没有讨论这个的文件?

这意味着Task.Run实际上是一个禁止发生火灾的场景.

.net task-parallel-library

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

限制属性上的字符串长度

这个问题出现在我试图找出一个更大的问题时,为了简单起见,我忽略了.

我必须在C#中表示某个数据结构.它是一个用于与外部系统通信的协议.因此,它具有一系列具有预定义长度和整数(或其他更复杂数据)的字符串.我们假设:

SYSTEM : four chars
APPLICATION : eight chars
ID : four-byte integer
Run Code Online (Sandbox Code Playgroud)

现在,我表示这个的首选方法是使用字符串,所以

class Message
{
    string System {get; set; };      // four characters only!
    string Application {get; set; }; // eight chars
    int Id {get; set; };
}
Run Code Online (Sandbox Code Playgroud)

问题是:我必须确保字符串的长度不超过预定义长度.此外,这个标题实际上有十分之一的字段,这些字段会不时地改变(我们仍在决定消息布局).

如何描述这种结构的最佳方式?我想,例如,使用带有数据描述的XML并使用反射来创建一个遵循实现的类(因为我需要以编程方式访问它).

而且,就像我说的那样,还有更多麻烦.我有其他类型的数据类型,限制字符/数字的数量......

c# reflection

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

确定对象的类型

我再次希望这不是一个意见问题; 我试图知道哪种是确定属于C#中某个层次结构的对象类型的最佳方法.我有两种方法来设计我的应用程序:

1 - 在基类上使用属性:

public abstract class Parent 
{
    public abstract TypeOfObject TypeOfObject { get; }
}

public class Child1 : Parent
{
    public override TypeOfObject TypeOfObject { get { return TypeOfObject.Child1 } }

    // ...
}

public class Child2 : Parent
{
    public override TypeOfObject TypeOfObject { get { return TypeOfObject.Child2 } }

    // ...
}

public enum TypeOfObject 
{
    Child1,
    Child2
}

public static void Main()
{
    Parent p = new Child1();

    switch (p.TypeOfObject)
    {
        case TypeOfObject.Child1: …
Run Code Online (Sandbox Code Playgroud)

c# polymorphism

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

检查null或undefined

虽然有JavaScript的语义差别nullundefined,很多时候他们可以被视为是相同的.检查值是null还是未定义的最佳方法是什么?


现在我正在做以下事情:

if (typeof value === "undefined" || value === null) {
    // do something
}
Run Code Online (Sandbox Code Playgroud)

这是非常冗长的.当然,我可以为此创建一个函数并在任何地方导入,但我希望有更好的方法来实现这一点.

另外,我知道

if (value == null) {
}
Run Code Online (Sandbox Code Playgroud)

将90%的时间完成工作,除非值为零......或者错误......或者一些可能导致模糊错误的隐含事物.

javascript node.js

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

为什么WCF突然需要DataContractAttributes?

我在应用程序中构建了许多WCF服务.直到最近,用作服务中许多操作的参数的大多数类都没有应用DataContract或DataMember属性.

现在,我连续做了一些更改,突然之间WCF抱怨他无法序列化我的类.

有谁知道配置中的任何更改,甚至ServiceContract,OperationContract等是否会导致WCF对它可以序列化的类变得挑剔?

我宁愿不需要这些类中的属性(它们应该是尽可能纯的C#类).

另外值得注意的是,如果我在源代码控制中返回到以前的版本,WCF会回到"正常"状态,所以我认为它不是机器/环境的东西.

wcf

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

如何在没有尝试catch块的情况下找出是否编写了任何方法

在Visual Studio 2010 C#项目中,如何在没有try-catch块的情况下编写是否编写了任何方法?

有时作为代码审阅者,很难搜索根据代码标准没有正确编写的函数/方法,因为没有try-catch块.

我知道Visual Studio 中的" 查找"选项支持正则表达式.但是,能够巧妙地完成这项工作的正则表达式是什么?

c# regex visual-studio-2010 visual-studio code-standards

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