wrapper 相关问题

包装器是一种OOP技术,其中一个对象封装(包装)另一个对象,资源(动态分配的内存,OS文件/寡妇句柄,套接字,线程互斥等)或一组子例程,隐藏/保护它并提供另一个(可能)更容易使用)界面。在实现繁重的问题上使用此标记时 - 标记实现编写的代码语言。

从 C 调用 Swift 的最佳方式是什么?

从 Swift 调用 C 非常简单,但是我正在研究在 C 中制作双向包装器,因此我的 C 必须调用 Swift 函数。 现在,我可以通过声明功能点来做到这一点......

回答 3 投票 0

用相同的包装器包装从抽象类继承的所有子类方法

我试图用相同的 exception_wrapper 包装从抽象类 (D) 继承的所有子类 (E, F) 方法。 我试图包装抽象类方法,因为子类方法超过...

回答 1 投票 0

Wrapper 类 - 为什么整型文字对 Long 失败但对任何更小的东西都有效

只是想了解自动装箱,除了一件事,我还这样做: 短 s = 250; 长 l = 250; 对 Long l 的分配失败。我想,这是因为你不能加宽然后框(即它......

回答 2 投票 0

如何调用 `functools.update_wrapper` 有哪些例子?

python网站上有一些关于functools.wraps的文档 但是,我无法看到一些示例。关于如何在没有

回答 0 投票 0

我们如何围绕名为 `globals` 的内置函数创建包装器?

Python 有一个名为 globals 的全局函数,它返回一个字典。 调用 globals() 函数的一些简单示例如下所示: ################################################## #...

回答 1 投票 0

嵌套流获取 - ConcurrentModificationException

所以我正在尝试做这个解决面试问题的问题,我给出了一个 6,4,7,9,3,12 的数组 并尝试返回加起来为 13 的三个值。问题是我只是

回答 0 投票 0

security(jwt) 多个 API 的包装器

我想在 JWT 或 auth0 中开发一个安全包装器, 我有独立的 API,我想为所有 API 开发一个通用的 JWT 或安全包装器,那时任何 API 都将其请求调用到一个通用的

回答 0 投票 0

克隆具体类型的自定义结构作为特征对象

使用 Rc,我可以将具体类型的 Rc 转换为特征对象: 使用 std::rc::Rc; 特征 Foo {} 为 usize {} 实现 Foo fn 主(){ 让 x: Rc = Rc::new(1); 让 y: Rc 使用 Rc,我可以将具体类型的 Rc 转换为特征对象: use std::rc::Rc; trait Foo {} impl Foo for usize {} fn main() { let x: Rc<usize> = Rc::new(1); let y: Rc<dyn Foo> = x.clone(); } 游乐场. 如果我为没有 Rc 绑定的 Sized 定义一个包装器,我也可以使用特征对象: use std::rc::Rc; trait Foo {} #[derive(Clone)] struct Wrapper<T: ?Sized>(Rc<T>); impl Foo for usize {} fn main() { let x: Wrapper<dyn Foo> = Wrapper(Rc::new(1)); } 游乐场. 但是,我不能将具体类型的包装器克隆为特征对象: use std::rc::Rc; trait Foo {} #[derive(Clone)] struct Wrapper<T: ?Sized>(Rc<T>); impl Foo for usize {} fn main() { let x: Wrapper<usize> = Wrapper(Rc::new(1)); let y: Wrapper<dyn Foo> = x.clone(); // this does not compile } 编译器报错如下: error[E0308]: mismatched types --> src/main.rs:13:31 | 13 | let y: Wrapper<dyn Foo> = x.clone(); | ---------------- ^^^^^^^^^ expected trait object `dyn Foo`, found `usize` | | | expected due to this | = note: expected struct `Wrapper<dyn Foo>` found struct `Wrapper<usize>` For more information about this error, try `rustc --explain E0308`. error: could not compile `playground` due to previous error 游乐场. 我有点困惑,因为我不明白为什么第三个例子不起作用。谁能帮我让第三个例子工作?我错过了什么? 另一个例子有效: use std::rc::Rc; trait Foo {} #[derive(Clone)] struct Wrapper<T: ?Sized>(Rc<T>); impl Foo for usize {} fn main() { let x: Wrapper<usize> = Wrapper(Rc::new(1)); let y: Wrapper<dyn Foo> = Wrapper(x.0.clone()); // clone inner Rc } 游乐场. 虽然对我来说已经足够了,但我认为它的样板代码太多了。欢迎提出其他建议。 您可以使用 CoerceUnsized: #![feature(unsize, coerce_unsized)] use std::ops::CoerceUnsized; use std::marker::Unsize; impl<U: ?Sized, T: Unsize<U>> CoerceUnsized<Wrapper<U>> for Wrapper<T> {} 然后您最初使用的语法会编译 fn main() { let x: Wrapper<usize> = Wrapper(Rc::new(1)); let y = x.clone(); } 现在需要功能unsize和coerce_unsized,所以你必须用夜间编译器编译。

回答 2 投票 0

解释“public static <T> Supplier<T>”在功能接口包装器中的含义[重复]

public static Supplier unchecked(Callable f) { 返回 () -> { 尝试 { 返回 f.call(); } 赶上(异常 e){ 扔新的

回答 1 投票 0

在 python 中将瘦派生类添加到库基类

我尝试为派生类实现一个克隆函数,使用基类的克隆方法。但我遗漏了一些东西,否则这就不是 Python。 我正在使用 vpython 库。

回答 0 投票 0

将所有变量声明包装在一个函数中

我有一个 Javascript 函数声明作为字符串(从 Function.toString 获得),我想用一个函数(也在 Javascript 中)包装所有变量声明,例如 const 值 = 42 到 const

回答 2 投票 0

如何输出小数点后20位的Double?

大家好, 双 d = 1.000000000000000000000000000000001; System.out.println(d); 上面的代码打印 1.0 但我想存储整个值。 期望的输出是 1.

回答 3 投票 0

在函数页面中添加querySelector后崩溃

有了这个函数,每个有子元素的div元素都需要将子元素包裹在一个wrap div中。一切正常,如果 有了这个函数,每个有子元素的div元素都需要将子元素包裹在一个wrap div中。如果一切正常 <button id="run" onclick="wrapChildren(document.querySelector('#element1'))">Run</button> 但是在我插入函数的那一刻: var element = document.querySelector('#element1'); 页面崩溃“devtools 与页面断开连接”。为什么会发生这种情况以及如何解决? function wrapChildren() { var element = document.querySelector('#element1'); const childElements = Array.from(element.children); if (childElements.length === 0) { return; } const wrapDiv = document.createElement('div'); wrapDiv.id = element.id+"wrap"; childElements.forEach((childElement) => { wrapDiv.appendChild(childElement); }); element.appendChild(wrapDiv); childElements.forEach((childElement) => { wrapChildren(childElement); }); } <div id="element1"> <div id="child1"> <div id="grandchild1"></div> <div id="grandchild2"> <div id="granddrandchild1"></div> <div id="granddrandchild2"></div> <div id="granddrandchild3"> <div id="granddrandgrandchild1"></div> </div> </div> </div> <div id="child2"></div> </div> <button id="run" onclick="wrapChildren()">Run</button>

回答 0 投票 0

Java包装器方法练习问题

我目前正在为我的计算机科学课做一个练习,但是当我运行代码时一直遇到这个顽固的问题。我想出了一个方法,以数学方式找到getCents(),它的工作,但......

回答 3 投票 -1

用Cython编译一个c库的包装器--在OSX上Linker找不到外部c库的.dylib。

我在Cython中为NAG(https:/www.nag.co.ukcontentnag-library-c)c库的一个集成函数写了一个包装器。它使用python setup.py build --inplace编译,其中setup文件 ...

回答 1 投票 0

地图服务器在封装cgi-binmapserv和map=mapfile.map时出现问题。

我使用的是Mapserver 7.0.7 (MS4W 3.2.8),我在http:/localhostcgi-binmapserv.exe?map=C:ms4wappsLeafletmapserver中的cgi-binmapserv和map=mapfile.map工作正常。

回答 1 投票 1

当使用Boost.python包装一个C++模块时,导入到python中时,未定义符号。

我正试图使用Boost.Python为一个C++库fbow创建一个Python封装器。我的代码是从另一个包装器 pyDBoW3 中得到的灵感,它与 DBoW3 库非常相似。以下是我目前能够做到的:......

回答 1 投票 0

有没有办法使用Spotify JAVA API来获取Spotify播放列表中的曲目ID?

我一直在使用Spotify API的Java封装器。我已经成功地检索到了所需的播放列表,但我无法获得播放列表中的曲目ID。下面是代码...

回答 1 投票 0

List<List<Integer>>到二维数组的转换(int[][])[重复]。

我想把List > 到java中的二维数组中。我可以用下面的代码做到这一点,但问题是我的二维数组使用的是原始数据类型。Integer[][] array = ...

回答 2 投票 0

试图理解一个Python包装器

对于下面的函数,我想了解一下 一、为什么包装函数下面初始化的是wrapper.count=0?为什么不在def counter(func)下面初始化?而且为什么wrapper.count不 ...

回答 1 投票 0

© www.soinside.com 2019 - 2024. All rights reserved.