问题标签 [language-interoperability]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
0 回答
182 浏览

java - 如何在 Java 代码中将 Java 函数应用于 Scala 选项

给定 Scala 选项Option[String],Option[Long]Option[Boolean]给定 Java 消费者String, longboolean我想在 Java 代码中通过静态类型检查干净地应用这些。问题是,Option[Long]Option[Boolean]成为Option<Object>Java 代码,所以我需要一个未经检查的类型转换:

我发现的另一个解决方案是针对每种原始类型的专用 Scala 函数:

但实际上,在 Java 方面,后两者看起来acceptIfDefinedLong(Option<Object>, Consumer<java.lang.Long>)如此,实际上并没有严格的类型检查。

  • 我怎样才能做到这一点?
  • 我如何概括这一点?
  • 我怎么能用Java写这个?
  • 有可能吗?

必须可以从 Java 调用,并且不能有未经检查的强制转换。

0 投票
1 回答
77 浏览

ios - 在objective-c中使用swift代码时的问题

我对尝试在 Objective-c 中使用 swift 的 iOS 非常陌生。我在objective-c 项目中创建了一个swift 类,我可以从objective-c 视图控制器调用该类。

问题是,如果我对 swift 代码进行任何更改,objective-c 类似乎无法立即访问它。每次我在 swift 类中更改某些内容时,我都必须构建项目,然后它似乎才可以在 Objective-c 中使用。

是否有我遗漏的配置,或者预计会按设计以这种方式工作?

0 投票
1 回答
782 浏览

c# - 尝试从 C# 调用 C++ dll 时出现格式不正确的异常

我正在使用 C# WPF。
我有一个 C++ 测试 dll 如下:
.h:

.cpp 文件:

C#代码:

当我试图调用 TestMethod 时,我遇到了异常:

我做错了什么?
谢谢!


0 投票
0 回答
63 浏览

hadoop - Hadoop 中的互操作性

我正在使用 Hadoop,我有两个问题:

  1. Hadoop 中如何实现互操作性
  2. Zookeeper 是否可以与 HDFS 主节点中的名称节点一起工作,如果可以,那么如何实现互操作性以及它们如何与从节点交互?
0 投票
1 回答
55 浏览

hadoop - Hadoop 互操作性

我对与互操作性相关的 Hadoop 有疑问。单个 zookeeper 可以与 Solr 和 Hbase 系统交互吗?如果是,它将如何交互。另外让我们考虑一下我们有一个与 Solr 系统和 Hbase 系统交互的 zookeeper。Solr 和 Hbase 系统的要求不同。zookeeper 怎么区分 Solr 和 Hbase 系统的需求

0 投票
1 回答
684 浏览

objective-c - 在 Swift 类中声明的运算符重载“<”在 Objective-C 中使用时有时不会被调用

我遇到了一个与 Swift/Objective-C 互操作性相关的奇怪问题。情况是这样的:

我有一个@objc public class GKDistance:NSObject,NSCoding,Comparable用 Swift 写的。为了比较距离,我添加了一个运算符重载,<如下所示:

然后在 Objective-C 方法中使用它,如下所示:

当调用 Objective-C 方法时,我可以print()在方法中添加语句和断点,<以确认何时使用运算符重载。在一种情况下,它神秘地跳过了 Swift 中定义的运算符重载,并在两个 GKDistance 对象之间使用了常规的 Objective-C 比较器。

当使用distance.value == 2375.1842554877021and运行时averageDistance.value == 75.671794891357421,return 永远不会遇到 Swift 运算符重载,并且 Objective-C 会执行条件内的代码。distance < averageDistancetrue

如果我将相关的 Objective-C 方法转换为 Swift,它会按预期运行,但我担心在我们的应用程序中的各种 Objective-C 方法中还有其他 GKDistance 比较可能无法看到 Swift 运算符重载。

是否有人遇到过与 Swift/Objective-C 互操作性相关的与运算符重载相关的类似问题?

0 投票
1 回答
89 浏览

c# - C++ OptionalAttribue 和 C# Intellisense

我正在编写一个 C#(托管)应用程序应该使用的 C++/CLI 库。

我想编写一个接受可选参数的方法,在 C# 中可以写成:

当用 C# 编写这样的东西时,在 Intellisense 中确实显示了同样的东西。

在 C++/CLI 中,我在头文件中写入:

编译我的库后,我在 C# Intellisense 中获得以下函数:

备注:我知道默认值不能更改为“ default(TYPE)”以外的任何值,所以我什至不尝试。

0 投票
1 回答
11247 浏览

ios - 在 Objective-c 上使用静态 Swift 方法时,“选择器没有已知的类方法”

我已经获得了 Objective C 代码,我需要向它添加额外的功能。我对 Objective C 非常不熟悉,所以在 Swift 上尽我所能做的事情对我来说是非常理想的。

这是我的 Swift 文件/类:

这是我的 Objective C .m 文件中的代码:

我收到错误“选择器'changeContadorImageSize:newSize:'没有已知的类方法”。

我做了整个桥接过程,我有

在文件的开头,一切似乎都运行良好。我已经在 SO 上查看了似乎类似的错误线程,但无济于事。

0 投票
2 回答
277 浏览

javascript - “一些 JS 文件的行为更像库——它们 [...] 从不直接操作 QML 组件实例”——中间立场?

引用在 QML 中定义 JavaScript 资源

一些 JavaScript 文件更像库——它们提供了一组辅助函数来接受输入和计算输出,但从不直接操作 QML 组件实例。

如果我想要一个同时满足以下条件的 JS 文件怎么办:

  • 操作 QML 组件实例(作为参数传递给它)
  • 没有为每个导入它的 QML 组件实例存储其代码和数据的副本?

我可以通过不将全局变量放在 JS 文件中来获得“没有数据存储在每个实例上”的部分。但是,出于某种奇怪的原因,似乎也为每个实例存储了“代码”部分的副本。我不明白为什么会这样,但我想知道我是否可以绕过它,以及以什么代价。

0 投票
1 回答
959 浏览

parsing - Google 协议缓冲区可以在不同语言之间进行序列化/解析吗?

官方网站以及其他一些来源将 Google Protocol Buffers 的优势之一描述为高度可互操作的。我知道该技术支持开箱即用的不同语言绑定,以及更多第三方实现,但这究竟意味着什么?

我的理解是否正确认为只要我有一个通用的模式文件,我就可以运行 protoc 编译器并为多种语言生成代码,然后使用生成的代码以一种语言编写程序,将一些数据序列化到文件中,然后在另一个程序中用另一种语言解析它?

例如,我在 Java 中运行的客户端应用程序是否可以序列化 Google 协议缓冲区并通过线路将其发送到用 C++ 实现的服务器,然后只要双方都是从同一个模式文件生成的,该服务器就可以对其进行解析并轻松使用它?

如果这正确的,那么是什么允许这种情况发生 - 他们的序列化/解析逻辑是否遵循此处详述的通用/一致的线路格式?