小编Bra*_* Ds的帖子

为什么这个转到这个开关里面不起作用?

对于这个程序:

class Program
{
    static void Main(string[] args)
    {
        var state = States.One;
        switch (state)
        {
            case States.One:
                Console.WriteLine("One");
                break;
            case States.Zero:
                goto case States.One;
        }
    }
}

public enum States : ulong
{
    Zero = 0,
    One = 1,
}
Run Code Online (Sandbox Code Playgroud)

我有:

"switch表达式或case标签必须是bool,char,string,integral,enum或相应的可空类型"

state变量是enum类型.如果我评论该goto case行,错误就会消失.

我正在使用VS 2013. + .NET 4.5.1.

c# switch-statement

38
推荐指数
2
解决办法
2686
查看次数

从堆栈到堆栈更好的时候,什么是合理的指示性大小?

WCHAR bitmapPathBuffer[512]
Run Code Online (Sandbox Code Playgroud)

堆栈分配好吗?或者最好使用堆这个大小?什么是合理的指示性大小什么时候从堆栈到堆栈更好...所有人都说"已经取决于"但是我们的大脑需要一些限制来定位.

c c++ memory-management

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

在ulong(C#)中获得最后一个有效位位置的最快方法?

什么是从最低有效位(LSB)到ulong(C#)中的最高有效位(MSB)的第一个设置(1)位位置的最快(或至少非常快)的方法?对于ulong i = 18; (10010),将为2(如果我们从0开始计算位置,则为1).

MS C++编译器具有 _BitScanForward64用于此任务的内在函数,但C#编译器没有模拟.

.net c# performance bit-manipulation bit

9
推荐指数
2
解决办法
2367
查看次数

如何使用tf.cond进行批处理

我想使用tf.cond(pred,fn1,fn2,name = None)进行条件分支.假设我有两个张量:x, y.每个张量都是0/1的批量,我想使用这个张量压缩x < y作为tf.cond pred参数的源 :

pred:标量,用于确定是返回fn1还是fn2的结果.

但是如果我正在使用批处理,那么看起来我需要遍历图中的源张量并为批处理中的每个项目制作切片并对每个项目应用tf.cond.看起来很可疑.为什么tf.cond不接受批处理而只接受标量?您能否告知批量使用它的正确方法是什么?

conditional tensorflow

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

File.Exists返回true,OpenExisting因DirectoryNotFoundException失败

我想在系统卷信息子文件夹中打开内存映射文件.我知道并在资源管理器中看到它存在,并且路径是正确的(它是从资源管理器复制粘贴的),而且该路径的File.Exists返回true,但MemoryMappedFile.OpenExisting失败并带有DirectoryNotFoundException.为什么?(我拥有系统卷信息文件夹和子文件夹的所有权限).

一些代码:

const string filePath = @"C:\\System Volume Information\\Foo\\2.ext";

bool exists = File.Exists(filePath); //is true
using (MemoryMappedFile bitmapFile = MemoryMappedFile.OpenExisting(filePath, MemoryMappedFileRights.Read)) //Throws DirectoryNotFoundException
{
    ...
}
Run Code Online (Sandbox Code Playgroud)

.net c#

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

Jupyter Notebook中的Google-oauth

我使用的是Google oauth2client,示例中的代码是:

flags = argparser.parse_args()
credentials = run_flow(flow, storage, flags)
Run Code Online (Sandbox Code Playgroud)

所有工作都在Python交互式或IDE中,但如果我尝试使用Jupiter Notebook中的代码,我会得到一个例外.

在Jupiter Noteboo里面我很简单:

    from oauth2client.tools import argparser
    argparser.parse_args()

and got:

usage: __main__.py [--auth_host_name AUTH_HOST_NAME]
                   [--noauth_local_webserver]
                   [--auth_host_port [AUTH_HOST_PORT [AUTH_HOST_PORT ...]]]
                       [--logging_level {DEBUG,INFO,WARNING,ERROR,CRITICAL}]
    __main__.py: error: unrecognized arguments: -f /run/user/1000/jupyter/kernel-c9aa5199-fcea-4884-8e5f-a004c66a733e.json

SystemExit                                Traceback (most recent call last)
<ipython-input-3-d141fc7aebe0> in <module>()
----> 1 argparser.parse_args()

/usr/lib/python3.5/argparse.py in parse_args(self, args, namespace)
   1736         if argv:
   1737             msg = _('unrecognized arguments: %s')
-> 1738             self.error(msg % ' '.join(argv))
   1739         return args
   1740 

/usr/lib/python3.5/argparse.py in error(self, message)
   2392         self.print_usage(_sys.stderr) …
Run Code Online (Sandbox Code Playgroud)

python google-oauth jupyter-notebook

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

代码分析改进

静态CA使解决方案构建变得更慢.在我的情况下>比没有CA慢2倍.我们可以禁用它,但这是失去力量的坏决定.所以,我们能做些什么?

首先让我们看看CA的工作原理.

你建立解决方案.在每个项目构建之后,msbuild编译目标fxcopcmd.exe被调用,其中包含应该分析的程序集的路径.fxcopcmd.生成由VS(或可能是输出流)使用的CA xml日志.fxcopcmd.exe加载程序集(快速)并同步分析它,因此只加载一个CPU而3个(在我的情况下)什么都不做.只有在CA完成后,才会构建项目依赖关系链中的下一个项目.

因此,CA中的弱点是我们可以改进它 - 强制它并行工作以使用所有CPU.

我看到这样的解决方案

要制作将从MSBUILD中获取参数的假fxcopcmd.exe,请记住它并立即向msbuild报告一切正常并且没有错误(通过CA xml.log或成功文件,或者可能是流..).所以MSBUILD将构建下一个项目,那时我们将使用保存的参数调用真正的fxcopcmd.exe ...如果MSBUILD将在下一个项目中调用fxcopcmd.exe - 我们将再次调用fxcopcmd.exe ...所以会有很少有加载所有CPU的进程.真正的fxcopcmd.exe完成后我们可以调用我们的MSBUILD目标,它将从microsoft.common.targtets只调用CA目标而没有编译,我们的假fxcopcmd.exe会立即报告结果(CA在那时完成,我们有日志)到MSBUILD-VS.

你怎么看?这会加速CA吗?为什么Microsoft没有在CA中创建这样的人员并且只使用一个CPU?

.net msbuild code-analysis visual-studio static-code-analysis

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

使用快速英特尔随机生成器(SSE2)失败,堆栈周围...已损坏

我需要非常快(最快)的随机发生器.我从英特尔发现了这个:快速英特尔随机数发生器

看起来不错.所以我在MS Visual Studio 2013上创建了项目:

//FastRandom.h:
#pragma once
#include "emmintrin.h"
#include <time.h>
//define this if you wish to return values similar to the standard rand();
#define COMPATABILITY

namespace Brans
{
        __declspec(align(16)) static __m128i cur_seed;

        // uncoment this if you are using intel compiler
        // for MS CL the vectorizer is on by default and jumps in if you
        // compile with /O2 ...
        //#pragma intel optimization_parameter target_arch=avx
        //__declspec(cpu_dispatch(core_2nd_gen_avx, core_i7_sse4_2, core_2_duo_ssse3, generic )
        inline void rand_sse(unsigned int* result)
        {
            __declspec(align(16)) …
Run Code Online (Sandbox Code Playgroud)

c++ random sse simd

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

有没有办法告诉WinDbg忽略程序断点?

有没有办法告诉WinDbg忽略由DebugBreak函数引起的程序断点?

windbg

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

最小二乘法的实践

非常简单的回归任务。我有三个x1, x2, x3带有一些随机噪声的变量。我知道目标方程:y = q1*x1 + q2*x2 + q3*x3。现在我想找到目标系数:q1, q2, q3使用平均相对平方误差(RSE)(Prediction/Real - 1)^2来评估我们的预测方法的性能。

在研究中,我发现这是普通的最小二乘问题。但我无法从互联网上的示例中获取如何用 Python 解决这个特定问题。假设我有数据:

import numpy as np

sourceData = np.random.rand(1000, 3)
koefs = np.array([1, 2, 3])
target = np.dot(sourceData, koefs)
Run Code Online (Sandbox Code Playgroud)

(在现实生活中,数据是有噪声的,不符合正态分布。)如何在 python 中使用最小二乘法找到这个 koefs?任何库的使用。

python regression numpy machine-learning scipy

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