标签: wrapper

使用Java来包装C++

我有一个用C++编写的项目,我正在寻找一个Java GUI作为它的接口.Java的选择是固定的,所以我需要学习如何从Java调用C++代码.重写C++代码不是一种选择.我想输入:

  1. 我可以用什么工具来实现这种包装.
  2. 如果有的话,我必须修改多少C++代码.
  3. 您有任何其他见解/跟进问题.

谢谢.

c++ java user-interface wrapper

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

将Integers与==进行比较究竟做了什么?

编辑:好的,好的,我误读了.我不是将int与Integer进行比较.正好指出.

我的SCJP书说:

当==用于将基元与包装器进行比较时,包装器将被解包,并且比较将是原始的.

所以你认为这段代码会打印出来true:

    Integer i1 = 1; //if this were int it'd be correct and behave as the book says.
    Integer i2 = new Integer(1);
    System.out.println(i1 == i2);
Run Code Online (Sandbox Code Playgroud)

但它打印出来false.

另外,根据我的书,这应该打印true:

Integer i1 = 1000; //it does print `true` with i1 = 1000, but not i1 = 1, and one of the answers explained why.
Integer i2 = 1000;
System.out.println(i1 != i2);
Run Code Online (Sandbox Code Playgroud)

不.是的false.

是什么赋予了?

java compare wrapper

11
推荐指数
3
解决办法
3410
查看次数

包装IEnumerable并捕获异常

我有一堆可以Process()对象的类,并返回自己的对象:

public override IEnumerable<T> Process(IEnumerable<T> incoming) { ... }
Run Code Online (Sandbox Code Playgroud)

我想编写一个可以包装其中一个处理器的处理器类,并记录包装Process()方法可能抛出的任何未捕获的异常.我的第一个想法是这样的:

public override IEnumerable<T> Process(IEnumerable<T> incoming) {
    try {
        foreach (var x in this.processor.Process(incoming)) {
            yield return x;
        }
    } catch (Exception e) {
        WriteToLog(e);
        throw;
    }
}
Run Code Online (Sandbox Code Playgroud)

但这不起作用,因为CS1626:不能在带有catch子句的try块的主体中​​产生值.

所以我想写一些概念上等同但编译的东西.:-)我有这个:

public override IEnumerable<T> Process(IEnumerable<T> incoming) {
    IEnumerator<T> walker;
    try {
        walker = this.processor.Process(incoming).GetEnumerator();
    } catch (Exception e) {
        WriteToLog(e);
        throw;
    }

    while (true) {
        T value;
        try {
            if (!walker.MoveNext()) {
                break;
            }
            value = …
Run Code Online (Sandbox Code Playgroud)

c# ienumerable exception wrapper

11
推荐指数
3
解决办法
5911
查看次数

围绕Objective-C编写C++包装器

我想在OS X上的C++项目中调用和使用Objective-C类.现在是时候开始转向所有Objective-C,但我们需要在一段时间内完成这项工作.

如何实现这一目标?任何人都可以解释并提供一个例子吗?

c++ xcode objective-c wrapper objective-c++

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

Python Wrap类方法

我正在尝试使用一个将由_wrap_run方法包装的run方法创建一个对象.我希望能够通过简单地键入instance.run()来调用方法和它的包装器,并且我希望能够对该对象进行子类化,以便我可以覆盖run()方法并让它仍然执行包装器.

更简单地说,我希望人们能够子类化A并覆盖run()但仍然调用run()方法执行包装函数.

我对这个机制有些困难.有没有人对这种方法有任何建议?谢谢阅读.

class A:

    def run(self):
        print "Run A"
        return True

    def _wrap_run(self):
        print "PRE"
        return_value = self.run()
        print "POST"
        return return_value

    run = property(_wrap_run)


a = A()
a.run()
"""
Should Print: 
PRE
Run A
POST
"""


class B(A):

    def run(self):
        print "Run B"
        return True

b = B()
b.run()
"""
Should Print: 
PRE
Run B
POST
"""
Run Code Online (Sandbox Code Playgroud)

python methods class wrapper

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

如何用Rails中的div包装每个选择的date_select?

我正在使用Ruby on Rails 3为用户创建一个表单,在那里他可以保存他的生日.控制器和模型周围的所有操作都可以正常工作.但我在使用这种形式的样式时遇到了麻烦.

对于我的表单中的每个选择,我在它周围包裹一个div,来设计它,通常效果很好.问题date_select是它会生成三个选择框,这些框都被包装到一个div中.作为Haml的示例,该字段的代码如下所示:

.select-wrapper
  = f.date_select :birthday, :start_year => Time.now.year - 120, :end_year => Time.now.year
Run Code Online (Sandbox Code Playgroud)

.select_wrapper创建围绕这三个选择框一个div,但我需要每一个选择框,有它自己的包装.有什么方法可以解决这个问题吗?

任何帮助,将不胜感激.谢谢.

html forms wrapper ruby-on-rails-3

11
推荐指数
3
解决办法
3575
查看次数

如何!=和==运算符在Java中使用整数?

以下代码似乎让我感到困惑,因为它提供了两个不同的输出.代码在jdk 1.7上进行了测试.

public class NotEq {

public static void main(String[] args) {

    ver1();
    System.out.println();
    ver2();
}

public static void ver1() {
    Integer a = 128;
    Integer b = 128;

    if (a == b) {
        System.out.println("Equal Object");
    }

    if (a != b) {
        System.out.println("Different objects");
    }

    if (a.equals(b)) {
        System.out.println("Meaningfully equal.");
    }
}

public static void ver2() {
    Integer i1 = 127;
    Integer i2 = 127;
    if (i1 == i2) {
        System.out.println("Equal Object");
    }

    if (i1 != i2){
        System.out.println("Different objects");
    } …
Run Code Online (Sandbox Code Playgroud)

java integer wrapper operator-keyword equals-operator

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

ObjectSet包装器不使用linqToEntities子查询

为了在密集的数据库使用系统中进行访问控制,我必须实现一个对象集包装器,其中将检查AC.

主要目标是使此更改保留现有的数据库访问代码,即使用linq实现所有类的实体(数据库没有集中层).

创建的ObjectSetWrapper是这样的:

public class ObjectSetWrapper<TEntity> : IQueryable<TEntity> where TEntity : EntityObject
{
    private IQueryable<TEntity> QueryableModel;
    private ObjectSet<TEntity> ObjectSet;

    public ObjectSetWrapper(ObjectSet<TEntity> objectSetModels)
    {
        this.QueryableModel = objectSetModels;
        this.ObjectSet = objectSetModels;
    }

    public ObjectQuery<TEntity> Include(string path)
    {
        return this.ObjectSet.Include(path);
    }

    public void DeleteObject(TEntity @object)
    {
        this.ObjectSet.DeleteObject(@object);
    }

    public void AddObject(TEntity @object)
    {
        this.ObjectSet.AddObject(@object);
    }

    public IEnumerator<TEntity> GetEnumerator()
    {
        return QueryableModel.GetEnumerator();
    }

    public Type ElementType
    {
        get { return typeof(TEntity); }
    }

    public System.Linq.Expressions.Expression Expression
    {
        get { return this.QueryableModel.Expression; }
    }

    public …
Run Code Online (Sandbox Code Playgroud)

c# linq iqueryable wrapper entity-framework-4

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

如何让IntelliJ使用包裹的maven(mvnw或mvnw.cmd)?

我刚刚将Maven(https://github.com/takari/maven-wrapper)添加到我的Maven项目中,我想知道是否有办法配置IntelliJ IDEA(在项目级别)以使用包装的Maven(./mvnw)代替看着Maven Home.

intellij-idea wrapper maven

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

容器和包装器之间的区别

在编程语言(例如,Java),有什么之间的差异containerwrapper(或者是有区别).我听过这两个术语含糊不清.

containers wrapper

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