小编Nic*_*sui的帖子

Spyder IDE抱怨无法检测到未定义的名称

将Windows 10与运行Python 3.5的Spyder IDE一起使用.我在__init__.py文件中看到以下抱怨unable to detect undefined names:

在此输入图像描述

但是,它似乎__init__.py与所有其他文件位于同一文件夹中.

在此输入图像描述

那么为什么抱怨呢?我试图删除前面的前导点,但它仍然抱怨.请给我一些指示.

python import python-import python-3.x spyder

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

C++ Loadlibrary()错误3765269347

我有这个Loadlibraty()错误3765269347困扰我.我正在实现一个构建为x64的C++控制台应用程序来加载x64本机C++ DLL.以下是加载DLL的C++控制台应用程序中的代码:

  bool InitDll()
{
    HINSTANCE hInst = LoadLibrary(_T("C:\\TIS_Nick\\Hardware\\Devices\\ThorDetectorSwitch\\TDSTest\\TDSTest\\Debug\\Modules_Native\\ThorDetectorSwitch.dll"));
    if( hInst != NULL )
    {
        FreeLibrary( hInst ); 
        return true;
    }
    else
    {
        DWORD err = GetLastError();
        return false;
    }
}
Run Code Online (Sandbox Code Playgroud)

我得到的错误是3765269347,我认为这意味着C++无法处理此错误.我确定我加载dll的路径是正确的.

我还使用Monitor Process来跟踪调用dll和函数的内容.这是我认为相关的信息.

11:08:07.3196483 AM TDSTest.exe 1604    QueryNameInformationFile    C:\TIS_Nick\Hardware\Devices\ThorDetectorSwitch\TDSTest\TDSTest\x64\Debug\TDSTest.exe   SUCCESS Name: \TIS_Nick\Hardware\Devices\ThorDetectorSwitch\TDSTest\TDSTest\x64\Debug\TDSTest.exe
11:08:08.5720585 AM TDSTest.exe 1604    CreateFile  C:\TIS_Nick\Hardware\Devices\ThorDetectorSwitch\TDSTest\TDSTest\Debug\Modules_Native\ThorDetectorSwitch.dll SUCCESS Desired Access: Read Attributes, Disposition: Open, Options: Open Reparse Point, Attributes: n/a, ShareMode: Read, Write, Delete, AllocationSize: n/a, OpenResult: Opened
11:08:08.5721041 AM TDSTest.exe 1604    QueryBasicInformationFile   C:\TIS_Nick\Hardware\Devices\ThorDetectorSwitch\TDSTest\TDSTest\Debug\Modules_Native\ThorDetectorSwitch.dll SUCCESS CreationTime: …
Run Code Online (Sandbox Code Playgroud)

c++ dll loadlibrary

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

无论如何要在初始化列表之前调用 CoInitialize() 吗?

这是我的 ThorDetectorSwitch.cpp 文件构造函数的 C++ 代码:

ThorDetectorSwitch::ThorDetectorSwitch() : _mcSwitch(__uuidof(MCLControlClass))
{
    _A  = WstringToBSTR(L"A"); 
    _B  = WstringToBSTR(L"B");
    _C  = WstringToBSTR(L"C");
    _D  = WstringToBSTR(L"D");

    _deviceDetected = FALSE;
}
Run Code Online (Sandbox Code Playgroud)

正如您所看到的,初始化列表_mcSwitch(__uuidof(MCLControlClass))用于初始化 COM 对象(MCLControlClass,从 COM dll 注册)。

我想知道我是否可以在此初始化列表之前调用 CoInitialize() ?因为我收到“CoInitialize() 尚未被调用”的异常。或者有其他方法可以避免这种异常吗?

多谢。

c++ com constructor initialization-list

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

在第二台显示器上自动显示Matlab图形

我有一台在“扩展”模式下连接了第二台显示器的计算机。

当我启动matlab脚本时,它将显示一个数字。在默认模式下,该图始终显示在计算机的显示屏上。但是,我希望该图直接显示在扩展监视器上。我也希望该图以其最大尺寸显示。

我进行了搜索,但是没有找到很多答案的运气。这里有人要启发我吗?非常感谢。

matlab matlab-figure

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

用线性增加的值填充向量

我会用线性增加的值填充/初始化一个向量。例如,对于这个向量中的每个元素,我希望下一个元素a比前一个元素多。或者该kth元素的值为k*a

像这样的东西:

float a = 1.132;
vector<float> v(100);

for (int n = 0; n < 100; ++n)
{
    v[n] = n*a;
}
Run Code Online (Sandbox Code Playgroud)

有更优雅的方法吗?谢谢。

一个 Matlab 的例子是linspace(beginning value, end value, number of points)

linspace(1,5, 6)

ans =

    1.0000    1.8000    2.6000    3.4000    4.2000    5.0000
Run Code Online (Sandbox Code Playgroud)

c++ vector

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

为 std::vector 指定另一个名称/别名

我试图给出std::vector一个不同的名称,例如MyVector,所以我遵循了 typedef

typedef std::vector<float> MyVector<float>;
Run Code Online (Sandbox Code Playgroud)

然而,Visual Studio 抱怨MyVector“MyVector 不是模板”

如何指定std::vector另一个名称?

我的代码中有 may ,MyVector本质上是std::vector,所以我只想等于 ,std::vector所以MyVector我不必将所有更改MyVectorstd::vector

c++ typedef vector

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

CUDA和C++简单项目

我正在尝试创建一个 CUDA + C++ 项目。基本上是一个需要一些 CUDA 内核的 .cpp 项目。所以我只是按照这里的例子,它基本上添加了两个向量。内核完成求和工作:http : //blog.norture.com/2012/10/gpu-parallel-programming-in-vs2012-with-nvidia-cuda/

这是代码,

#include <iostream>
#include "cuda_runtime.h"
#include "cuda.h"
#include "device_launch_parameters.h"

using namespace std;

__global__ void saxpy(int n, float a, float *x, float *y)
{
  int i = blockIdx.x*blockDim.x + threadIdx.x;
  if (i < n) y[i] = a*x[i] + y[i];
}

int main(void)
{
  int N = 1<<20;
  float *x, *y, *d_x, *d_y;
  x = (float*)malloc(N*sizeof(float));
  y = (float*)malloc(N*sizeof(float));

  cudaMalloc(&d_x, N*sizeof(float));
  cudaMalloc(&d_y, N*sizeof(float));

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

c++ cuda visual-studio-2012

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

CT投影(距离驱动)算子实现?

我正在尝试使用MATLAB来实现CT(计算机断层扫描)投影算子A,我认为它经常被称为"系统矩阵".

基本上,对于N×N图像M,投影数据P可以通过将项目操作符与图像相乘来获得:

P = AM

并且可以通过将投影算子的(共轭)转置乘以投影数据来执行反投影过程:

M = A'P

任何人都有关于如何实现矩阵A的任何想法/示例/示例代码(例如:Radon变换)?我真的想从一个小尺寸的矩阵开始,比如8 x 8或16 x 16,如果可能的话.

我的问题是:如何实现投影算子,这样通过将运算符与图像相乘,我可以得到投影,并通过将运算符的(共轭)转置与投影相乘,我可以得到原始图像.

编辑:

特别是,我想实现距离驱动的投影仪,在这种情况下,光束轨迹(平行,风扇等)无关紧要.非常简单的例子(MATLAB首选)对我来说是最好的.

matlab projection image-processing medical tomography-reconstruction

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

传递常量共享内存

我有一个长度为128的向量;所有元素在整个计算过程中都是恒定的。

我喜欢在 CUDA 内核中使用这个常量向量。我正在考虑将该向量存储在共享内存中,并在内核中使用它。我想知道该怎么做?几行代码就很好了。

或者这是最好的方法吗?多谢。

我们可以通过全局内存传递头顶:

__global__ void fun(float* a, float* coeff)
{
  size_t
        i = blockIdx.x * blockDim.x + threadIdx.x;

  if (i >= 128)
       return;

  a[i] *= coeff[i];
}
Run Code Online (Sandbox Code Playgroud)

但这可能不是最好的方法。我想象类似的事情

__shared__ float coeff[128];
Run Code Online (Sandbox Code Playgroud)

但是如何将 CPU 值复制到该共享内存呢?我应该将此共享内存传递给我的内核吗?

cuda vector gpu-shared-memory

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

C#错误CS0201:只能将赋值,调用,递增,递减和新对象表达式用作语句

这是我收到错误的行:

_activeType == typeof(Reticle);
Run Code Online (Sandbox Code Playgroud)

以下是Reticle类的定义方式.一些属性和方法可能没有多大意义,但我认为类的定义应该是关键问题:

public class Reticle : Shape
{
    #region Fields

    private readonly Path _path;       
    private bool _isClosed;
    private PointCollection _points;       

    #endregion Fields

    #region Constructors
    public Reticle()     // constructor
    {
        var geometry = new PathGeometry();
        geometry.Figures.Add(new PathFigure());
        _path = new Path { Data = geometry };
        Points = new PointCollection();           
    }
    #endregion Constructors

    #region Properties
    /// <summary>
    /// Gets or sets a value that specifies the arc roundness.
    /// </summary>
    public Geometry Data
    {
        get
        { …
Run Code Online (Sandbox Code Playgroud)

c# compiler-errors class typeof

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

C++:将结构传递给函数

这是我在做的事情:

在single.h文件中定义了一个struct:

typedef struct
{
    double x,y,z;
}PhysicalSize;
Run Code Online (Sandbox Code Playgroud)

此结构用于single.cpp文件中

PhysicalSize physicalSize;
physicalSize.x = xstageStepSize;
physicalSize.y = ystageStepSize;
physicalSize.z = zstageStepSize;

long SaveTIFFWithOME(wchar_t *filePathAndName, char * pMemoryBuffer, long width, long height, unsigned short * rlut, unsigned short * glut,unsigned short * blut,
                 double umPerPixel,int nc, int nt, int nz, double timeIncrement, int c, int t, int z,string * acquiredDateTime,double deltaT, 
                 string * omeTiffData, AcquireSingle::PhysicalSize physicalSize)    
Run Code Online (Sandbox Code Playgroud)

我介绍了这个功能,看起来很好,所有人physicalSize.x, physicalSize.y and physicalSize.z都有正确的价值.但是,当我迈步时SaveTIFFWithOME(),所有physicalSize.x, physicalSize.y and physicalSize.z看起来都很奇怪,好像它们从未被初始化.

我想知道我做错了什么,以及将结构作为参数传递给函数的正确方法是什么?谢谢.

c++ struct function parameter-passing

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