标签: wrapper

任何简单的Java方法将hashmap的一部分传递给另一个hashmap?

对于我的交易程序,Merchant对象具有使用布尔值枚举的Qualities的HashMap质量.

public class Merchants {
   private Map<Qualities, Boolean> qualities = new HashMap<Qualities, Boolean>();
Run Code Online (Sandbox Code Playgroud)

我想给每个Merchant对象一个真实质量的进一步ratingQualities HashMap,用Byte或Integer值表示这些质量的等级.

例如,给定的商家可能具有与其真实股票经纪质量相关联的"1"评级.

问题是Java不允许我轻易做到这一点.以下代码演示了我的意图,但没有编译:

private Map<qualities-TRUE, Byte> ratedQualities = new HashMap<qualities-TRUE, Byte>();
Run Code Online (Sandbox Code Playgroud)

根据这个链接文本,一个解决方案是为HashMap的质量创建一个包装器.这是唯一的解决方案还是有更好的方法?

在此先感谢您的帮助.

java hashmap wrapper

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

围绕C++课程的包装

假设C++类具有表单的构造函数(以及其他构造函数)

Foo::Foo( FILE *fp ) { etc... }
Run Code Online (Sandbox Code Playgroud)

现在我想创建一个表单的包装类

class WFoo {
      Foo::Foo A;
      Foo::Foo B;
 };
Run Code Online (Sandbox Code Playgroud)

与构造函数

WFoo::WFoo(FILE *fa, FILE *fb) {
      A(fa), B(fb);
}
Run Code Online (Sandbox Code Playgroud)

WFoo的定义有什么问题?提前致谢.

c++ wrapper

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

struct作为C#中值类型的包装器

我刚开始使用C#.我注意到所有的值类型都包含在各自的structs中.我确实查找了它背后的原因,虽然找不到多少(也许我没有正常搜索).我只是想问一下 - struct在C#中将值类型包装为s而不是Java中的包装类是什么原因?

编辑:

当我徘徊时int,我猜它会告诉我这个:http://msdn.microsoft.com/en-us/library/system.int32%28v=vs.71%29.从评论中我知道我可能在这里理解错误.如果int没有包装struct,那为什么会显示相关信息呢?

.net c# wrapper

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

最有效的方法是将盒装双倍乘以2?

假设我们有一个盒装双变量,foo我们希望将其值乘以并将其2存储在另一个盒装双变量中bar.从以下方法,

方法一:

Double bar = foo * 2;
Run Code Online (Sandbox Code Playgroud)

和,

方法二:

Double bar = Double.valueOf(foo.doubleValue() * 2);
Run Code Online (Sandbox Code Playgroud)

考虑到效率,可读性等,哪一个更优选?或者这些差异是如此微不足道,以至于这些方法实际上是等价的?

java double wrapper

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

int和Integer之间的区别

int和之间有什么区别Integer.是的,一个是primitive另一个wrapper,正确使用它们的情况是什么.

还有什么区别:

int i=0;
++i
and 
i++
Run Code Online (Sandbox Code Playgroud)

java int integer wrapper primitive-types

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

如何使用python从图像堆栈中读取时间序列?

我正在尝试将图像堆栈读入3-d矩阵(例如X,Y,Z)。目的是遍历整个图像(从(X1,Y1)到(Xn,Yn)。在每个位置,例如(X1,Y3),我想读取整个Z数组并对其进行一些处理。例如,图像将包含计算结果。

举例来说,假设我有12幅(3x3)具有反射率数据的图像,每幅图像给出一个月的反射率。

图片1

   X1 X2 X3
Y1 10 10 14
Y2 12 14 16
Y3 10 19 17
Run Code Online (Sandbox Code Playgroud)

图片2:

   20 21 23
   20 23 29
   21 22 21
Run Code Online (Sandbox Code Playgroud)

。。。

图片7:

   50 50 60
   60 70 60
   65 67 80
Run Code Online (Sandbox Code Playgroud)

。。。

图片12:

   X1 X2 X3
Y1 10 11 12
Y2 10 16 17
Y3 12 13 14
Run Code Online (Sandbox Code Playgroud)

因此,最后,我想读取每个(X,Y)位置的z数组。从(X1,Y1)开始,到(X12,y12)结束。例如,在(X1,Y3),Z数组为:[10,21,。,。,。,65,。,。,。,12]。我将在数组上应用一些函数,例如,数组的最大值。例如,位置(X1,Y3)的新输出图像的值将为65。

我使用ENVI图像处理库在IDL中做了类似的操作。但是我真的很想用python做到这一点,因为我的目标是切换到开源语言。我刚刚开始使用python,到目前为止,我的搜索还没有给我任何解决方案,这就是为什么我要寻求经验丰富的python用户的帮助。

非常感谢,安吉拉

python image matrix wrapper

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

成员变量指针

对于给定的结构:

struct foo
{
    void fooFunc(){}
    int fooVar = 0;
};
Run Code Online (Sandbox Code Playgroud)

我可以为函数创建一个调用wapper:std::mem_fn( &foo::fooFunc )这样我就可以将它传递给另一个方法并在一个对象上调用它.
我想知道是否有类似的调用包装器,但是对于成员变量.

例如,我在这里使用指向成员变量的指针,但我想使用一个调用包装器:

void bar( std::function< void( foo ) > funcPtr, int foo::* varPtr )
{
    foo myFoo;
    funcPtr( myFoo );
    foo.*varPtr = 13;
}
Run Code Online (Sandbox Code Playgroud)

c++ wrapper mem-fun member-pointers c++11

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

围绕C++类的C可调用包装器

我正在按照教程创建一个围绕C++代码的包装器,以便可以从C#调用它.
我编译包装器时遇到错误.Header.h

class MyClass{
    public:
        MyClass(int x, int y);
        double GetSum();
    private:
        int x_;
        int y_;
};
Run Code Online (Sandbox Code Playgroud)

以下是源文件(body.cpp)

#include  "Header.h"

MyClass::MyClass(int x, int y)
{
    x = 8;
    y = 8;
}

double MyClass::GetSum()
{
    int r = x_ + y_;
    return r;
}
Run Code Online (Sandbox Code Playgroud)

包装类/ dll如下所示

#include "C:\Users\tumelo\Documents\Visual Studio 2012\Projects\Emgu\MyClassCpp\MyClassCpp\Header.h"
#include "C:\Users\tumelo\Documents\Visual Studio 2012\Projects\Emgu\MyClassCpp\MyClassCpp\Body.cpp"

//for the function you want made avaible from the dll
    extern "C" __declspec(dllexport) double GetResults(int x, int y)
    {
        //create an instance of the class 
        MyClass …
Run Code Online (Sandbox Code Playgroud)

c++ wrapper extern-c

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

包装std :: ignore

我正在开发一个自定义库.到目前为止,我已将std :: tuple和std :: tie包装到我自己的myOwn :: Tuple和myOwn :: tie中.它们的功能与std :: tuple和std :: tie相同.我想用std :: ignore做类似的事情.

到目前为止,我写了以下内容:

namespace myOwn
{
     auto
     tilde()
     -> decltype(std::ignore)
     {
         return std::ignore;
     }
}
Run Code Online (Sandbox Code Playgroud)

我唯一的问题是我现在必须使用带圆括号的myOwn :: tilde().我希望能够将其用作myOwn :: tilde.到目前为止,我在std :: ignore上读到的只是如何使用它,

这里:std :: ignore的可能实现

这里:std :: ignore的要求

在这里:C++:使用std :: ignore返回std :: tie的类型

我试过用了

typedef std::ignore tilde
Run Code Online (Sandbox Code Playgroud)

但这没有成功.任何帮助,将不胜感激.这个问题可能对试图包装对象的其他人有用.

c++ stl std wrapper c++11

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

是否可以使用NULL检查制作通用C++函数指针包装器?

我必须包含几个可以具有NULL值的函数指针.我正在尝试为此创建一个通用类模板,它检查函数指针是否为NULL,如果指针不为NULL则调用原始函数,如果指针为NULL则返回默认值.像这样的东西:

//Function typedefs
typedef void(*foo)();
typedef int(*bar)(int u, char *);

//Function pointers
foo gfFoo;
bar gfBar;

//Wrapper class
template<typename T,  typename... Args>
class WrapFuncObj {
    T* f;
public:
    WrapFuncObj(T* t) {
        f = t;
    }
    typename std::result_of<T(Args...)>::type operator()(Args&&... args) {
        if(f != nullptr){
            return (*f)(std::forward<Args>(args)...);
        }
        else
        {
            return 0; //RETURN something for non-void types
        }
    }
};

template<typename T,  typename... Args>
class WrapFuncObjVoid {
    T* f;
public:
    WrapFuncObjVoid(T* t) {
        f = t;
    }
    typename std::result_of<T(Args...)>::type operator()(Args&&... args) { …
Run Code Online (Sandbox Code Playgroud)

c++ templates function wrapper generic-programming

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