Generics 可选泛型类型

我有以下日志记录方法: private logData<T, S>(operation: string, responseData: T, requestData?: S) { this.logger.log(operation + ' ' + this.url); if (requestData) { this.logger.log('SENT'); this.logger.log(requestData); } this

Generics 实现不只是impl-Foo有技术原因吗?

我刚刚了解到,使用泛型的结构被声明为struct Foo,而实现被声明为impl Foo。以下是对差异的解释: 注意,我们必须在impl之后声明T,以便在类型点中使用T。在impl之后将T声明为泛型类型是Rust如何知道尖括号中的类型是泛型类型而不是具体类型的 再说一次,我是个新手,但是对于必须声明struct Foo,甚至可能是fn foobar:t,难道不能提出同样的理由吗 这将是三个impl块,分别具有名为T、i32和u32的类型参数 你可能会说,根据上下文来决定。现在,为了弄清发生了什么

Generics 如何在Kotlin中将多个上界语法与委托语法相结合

假设我有以下接口: interface A interface B interface C 我想为类型A和B创建具有多个上限的类: class First<T>(val t: T) where T : A, T : B 我的问题是如何在一个类声明中结合这两者 我试过这个: class Third<T>(val t: T, val c: C) where T : A, T : B, C by c // syntax error: "Expecting : before

Generics 我可以在kotlin数据类中创建泛型类型吗?

我有一个后端,它总是返回一个带有一些数据的“success”,就像在json字段中一样,该字段将被命名为success并包含数据。或者它将返回json格式的错误对象。 所以我希望有一些BaseResponse,所以当我使用它时,我可以做一些类似BaseResponse的事情,这样成功就会映射为Person对象 所以我想这样做: @Parcelize data class BaseResponse<T>( val success: T? = null ) : Parcelab

Generics 在编程中缺少泛型意味着什么?

在对某人的评论中说 总的来说,我不得不否决推荐ApacheCommons的建议,因为如果你发现有用或不有用的东西,这是一个50:50的机会。这里面当然有很多珍宝,但也有很多不好的和过时的东西,例如,在这一点上令人担忧的缺乏泛型是不可原谅的-甚至引入它们的Java5已经达到了EOL 在这种情况下,“缺少泛型”是什么意思?你能用外行的术语解释一下吗?没有泛型,你将无法“泛化”你的代码,也就是说,你将无法使用相同的代码和不同的对象类型。没有泛型,你将无法“泛化”你的代码,也就是说,您将无法对不同的对象

Generics 程序员如何获得经验?

这件事我已经想了一段时间了。程序员如何获得经验?最具决定性的因素是什么?是书吗?还是工作?教育?是什么让你从一开始的程序员变成了知识渊博的程序员 开始时是这样的: 作为一般概念的经验 包括知识或技能,或 对某物或某物的观察 通过参与或 暴露于那件事或事件中 为了成为一名有经验的程序员,你需要经历很多编程。换言之,大量的编程工作,亲自动手 你可以从阅读中学到技巧、思维方式、方法等等。所有这些都将帮助你成为一名更好的程序员。但是经验也是关于经历。去那里,去了解情况,在你的内心感受它。这种直觉来自于积

Generics 带通配符类型参数的映射上的flatMap

我正试图写这样的东西: trait Typed[T] trait Test { def testMap: Map[Typed[_], Int] def test = testMap.flatMap {case (typed, size) => Seq.fill(size)(typed)} } 但我得到了以下错误: error: no type parameters for method flatMap: (f: ((Typed[_], Int)) => Travers

Generics Typescript:new()接口协定未强制执行

我试图在Typescriptlang.org上的操场上测试一个相当做作的例子。我的InWable接口指定一个字符串构造函数参数。在我的工厂方法的主体中,我没有考虑这个约束(通过使用数字或使用无效参数列表调用)。我没有收到错误或警告 我做错什么了吗?还是这是一个错误 interface INewable<T> { new(param: string): T; } interface IToStringable { toString(): string; } mo

Generics Swift中函数调用的降级失败

我有一个包含函数调用的字典,还有一个向字典中添加函数的通用方法。当我向下转换该泛型函数以便将其添加到字典中时,编译器崩溃 在操场上放置以下代码时可以看到: import Cocoa class Email:NSObject { var Subject:String = "" } class SMS:NSObject { var Message:String = "" } var allfunc = Dictionary<String, (item: NSObject)

Generics 如何在泛型上添加约束

我很难找到如何约束泛型类型。似乎K需要实现和特性。我在文档中找不到所需的语法 使用std::collections::HashMap; 结构Foo{ map:HashMap, } impl-Foo{ fn插入某物(&mut self,k:k,v:v){ 自映射插入(k,v); } } 编译器错误包括: error[E0599]:在当前作用域中找不到结构`std::collections::HashMap`的名为`insert`的方法 -->src/lib.rs:9:18 | 9 |自映射插入(

Generics 静态解析类型参数的深入描述

我正在寻找一个非常全面的静态解析类型参数的回顾。具体可以用它们做什么,它们的限制是什么,使用它们的效果是什么,它们如何与普通类型参数结合,以及实例级内联成员如何工作 规范本身在这个问题上提供的很少,只是顺便提到它们。它没有说明具有此类类型参数的类型的能力(例如,类型示例),在指定复杂成员约束时如何准确地使用关键字和和或,成员签名必须符合约束签名的数量,等等 我真的只找到了介绍性材料和一些非常具体的信息,没有任何全面的概述。你读过MSDN文档吗?当然,我想深入了解一下。我已经看过说明书了。几乎没有

Generics 无法循环通过泛型类型B的列表A(icollection),其中A和B都实现相同的接口

介绍有点乏味,但只是为了清楚!有些人甚至可能从中学习到一些东西,或者获得一些有用的见解。我的问题在下面。我真的希望有人能帮助我 我有这个接口 公共接口设备 { 对象GetPKValue(); bool-PKHasNoValue(); } 我所有的自动泛型EF类都实现了这个接口并实现了这两个方法。这是通过使用分部类的单独文件完成的,因此在重新生成EF类时,实现不会消失。这对于这个问题并不重要,但我在下面给出了两个EF类设置的示例,debiteur和schakeling。当然,它们都在同一名称空间

Generics 如何在Autofac中创建通用AggregateService

您可以这样做: 注册: builder.RegisterAggregateService(typeof(IGenericAggregateService<>)); builder.RegisterAggregateService(typeof(IGenericAggregateService)); 构造函数定义: public Repository(IGenericAggregateService<TEntity> aggregateService) 公共存储库(I

Generics 使用;扩展;带有TypeScript泛型的关键字

我不明白为什么下面的代码会导致错误。在这个简单的示例中,组件类与预期一样没有问题。但是,显式地将状态定义为从基本状态扩展而来的通用实现似乎没有通过基本状态提供的键入信息发送,从而导致错误 class SampleClass<State extends BaseState> { baseState: Partial<BaseState>; method(state: Partial<State>): void { this.ba

Generics 如何从函数返回F中的泛型值#

我正在解码不同类型的json对象流: type AppRow = | ZoneR of ZoneRow | CustomerR of CustomerRow 我需要返回已解码的对象: //None work: let fromJson x = let fromJson x:'T = let fromJson<'T> x = let fromJson<'T> x:'T = Json.Compact.deserialize x let decode

Generics 具有通配符泛型类型的Lambda

在java中,我有以下lambda: Function<? extends Number, Boolean> f = i -> true; Function应用Function的问题您希望通过函数“消费”元素的定义应该是: static Function<? super Number, Boolean> f = i -> true; 静态函数读取 Function<Number, Boolean> f = i -> true; clas

Generics 泛型类型和子类型Kotlin

有没有一种方法可以在不指定两个通用参数的情况下执行类似的操作 open abstract class test<Z: ClassZ, T: ClassT<Z>> { lateinit var varZ : Z lateinit var varT : T } 开放抽象类测试{ lateinit var varZ:Z lateinit var varT:T } 例如,我想写这样的东西(不编译): 开放抽象类测试{ lateinit var varZ:Z l

Generics 如何根据Rust中的泛型选择常数?

我正在尝试建立一个包含常量和函数的数学库。我需要做什么才能将值绑定到使用泛型的特性 我的Rust 1.30.0项目中的函数使用泛型作为参数,我需要常数来匹配相同类型的T,这样我就可以在函数中使用它们(这里我也使用num板条箱): 它只输出以下错误: error[E0283]:需要类型批注:无法解析`\:consts` -->src/lib.rs:27:21 | 27 |设pr:T=consts::INGA; | ^^^^^^^^^^^^ | 注:由'con

Generics 有没有一种方法可以在智能指针中为对象实现特性?

是否有一种方法可以为智能指针(例如,Box,Rc等)中的对象提供特性的一般实现 例如: 使用标准::借用::借用; 使用std::rc::rc; 金德奎尔{ fn有点相等(&self,other:&Rhs)->bool; } //很好(仍然需要为每个LHS容器复制粘贴) 为T 哪里 WrappedRhs:借用, T:KindaEqual, { fn有点相等(&self,other:&WrappedRhs)->bool{ self.kind_equal(other.borrow()) } } //

Generics 如何在UML中对依赖于属性的接口实现进行建模?

我有一个类Properties,它有两个属性: 种类:种类 config:config 使用Kind作为枚举类型,其中包含一些字符串 Config中包含的内容取决于kind的值 我如何用UML建模 例如,如果我有一个kind值“Service”,那么config接口将被实现为ServiceConfig。在Config和ServiceConfig之间的连接器上添加约束注释是否足够?您可以使用约束对其建模。这可以附加到类或属性本身。我不会写OCL,但那将是最正式的方式。但是,用括号括起来的纯文本就可

Generics 对Kotlin何时推断平台类型感到困惑

混淆以下示例代码使我意识到我对Kotlin推断平台类型感到困惑: inline fun <reified U, V> LiveData<U>.map(crossinline f: (U) -> V): LiveData<V> { val result = MediatorLiveData<V>() result.addSource(this) { u -> // u: U! if (u is U) {

Generics 将问题和Nim中的任何类型混淆

我有一种类型: type generic_seq[T] = ref object data: T case base: bool of false: down: generic_seq[any] of true: discard 以及以下代码行: var current_args: generic_seq[int] = generic_seq[int](base: true.bool, data: 3) 编译器行:nimc-r main给出了错误:erro

Generics F#中OCaml样式泛型类型参数的语法是什么?

根据,F#支持OCaml样式的类型参数。问题中的例子是: type 'a NestedList = List of 'a NestedList list | Elem of 'a 然而,我在F#文档中的任何地方都找不到这种语法文档,而且,我无法让F#编译器接受我给出的链接中的答案中的语法。 编译器不接受使用多个参数的尝试: type ('a * 'b) SomeType = ('a * 'b) 然而,这是可行的: type ('a , 'b) SomeType = ('a * 'b) let

Generics 使用FactoryMethod中的Windsor泛型

我们已经拥有以下工厂的现有实现: interface ISomethingFactory { ISomething<T> Create<T>(); } 我可以创建所需的内容,但我需要将ISomething的每个T显式注册到容器中(这是非常不可取的) 我不确定如何(以及是否)使用TypedFactoryFacility(我仍然有自己的工厂实现,我需要使用,可能不需要温莎的“魔法”实现,对吧?) 我不确定如何(以及是否)使用工厂方法中可用的上下文。Requeste

Generics C#添加两个通用值

有人能解释一下为什么这行不通吗?我试图能够添加两个值,而不考虑数值类型 public static T Add<T> (T number1, T number2) { return number1 + number2; } 从错误消息中可以看到,无法应用运算符“+”。 这是因为编译器对T类型一无所知。 它甚至不知道这是否是一个类。没有允许您强制运算符重载的通用约束。你可以看一看这本书。或者,如果您使用的是.NET 4.0,则可以使用dynamic关键字: public st

Generics ProtoBuf Net,开放泛型类型序列化/反序列化

我有以下类型: Class Command<TData> : Base Where TData : I 我得到以下例外情况: 未处理的异常:System.NullReferenceException:对象引用未设置为 对象的实例。 在C:\Dev\ProtoBuf-net\ProtoBuf-net\Meta\TypeModel.cs中的ProtoBuf.Meta.TypeModel.ResolveProxies(类型)处:第952行 在C:\Dev\ProtoBuf-net\Pro

Generics F#泛型类型约束和duck类型

我正在尝试在F#中实现duck键入,我发现您可以有如下方法: type ListEntryViewModel<'T when 'T : (member Name : string)>(model:'T) = inherit ViewModelBase() member this.Name with get() = model.Name type ListEntryViewModel(model:'T)= 继承ViewModelBase() 使用get()=model.N

Generics Haskell中的类型检查可分解图

假设我正在创建一个处理文本文件的数据管道。我有以下类型和功能: data A = A deriving (Show, Typeable) data B = B deriving (Show, Typeable) data C = C deriving (Show, Typeable) data D = D deriving (Show, Typeable) step1 :: A -> B step2 :: B -> C step3 :: C -> D 对于下面的每个函数步骤

Generics 获取模板传递的类型的构造函数';s的形式论证

我想传递一个类型为的构造函数,该构造函数作为形式泛型参数传递。当我试着跟随 class Test {} function g(x: new() => any): void { var y = new x(); } function f<T>() { g(T); } f<Test>(); 看起来TS中的泛型仅用于指示typechecker,即它们是。我需要它来更改代码生成器,因此更改必须是函数f的本地更改。如何从泛型参数中获取类型的构造函数?您

Generics typescript如何转换任何[]

我有一节课 class List<T> 为什么这样做有效 private loop() { for (var x of this._items) { } 但事实并非如此 private loop() { for (var x of this.items) { } 错误如下所示: 类型“()=>any[]”不是数组类型或字符串类型。您只是缺少对this.items的方法调用-您想要this.items(),它将返回数组,而不是使用方法本身作为迭代

Generics 两种结构的推广

我有两个独立的库(不同的板条箱),每个库定义一个结构和一个函数来构建这样的结构,如果可能的话(为了简单起见,我将所有内容都放在一个模块中): 由于SomeTrait的大小在编译时是未知的,我不能简单地让a:Option=Foo::make_Foo(“abc”)。因此,我尝试将其包装在一个框中(在解压缩选项之前): 完整示例: // Library part struct Foo {} struct Bar {} impl Foo { fn new() -> Option<

Generics Autofac-使用lambda表达式注册泛型类型

我试图将IDbSet注册为我的逻辑类的依赖项 有没有办法做到这一点 builder.Register(c => { var context = myContainer.Resolve<MyDbContext>(); return context.Set<T>();// Problem Here }).As(typeof(System.Data.Entity.IDbSet<>)); builde

Generics Kotlin通用工厂动态铸造

我要创建具有通用参数的对象工厂: interface Foo<T> { fun buzz(param: T) } 我的buzz方法拒绝任何参数(希望Nothing作为类型) 因此,我创建了另一个带有类型的映射 val classMap = mapOf<String, KClass<*>>( Pair(firstKey, FooImpl1::class), Pair(secKey, FooImpl2::class) ) val par

Generics 进入数据结构的子类型对象是否成为该数据结构';声明的类型是什么?

进入数据结构的子类型对象是否成为该数据结构的声明类型?例如,如果我将狗对象放入哺乳动物列表中,对象的类型会改变吗 open class Mammal(str: String) class Dog : Mammal("") val d : Dog = Dog() var listOfMammal: MutableList<Mammal> = mutableListOf() listOfMammal.add(d) 开放类哺乳动物(str:String) 犬类:哺乳类(“”) va

Generics 我能利用使用泛型的密封类的优点吗?

我想创建一个通用的“find”方法,该方法查找实现密封类的提供实体并返回该实体,而不必重复多态性 我想做这样的事情,但我还没有找到一种方法来满足我想要的和编译的一切 密封类法术(val id:Long) 类火球(id:Long,val name:String):拼写(id) 职业风暴(id:Long,val size:String):拼写(id) 内联乐趣查找(id:Long):T= 时间(T){ 火球->火球(id,“火球”) 风暴->风暴(id,“3英亩”) } 主要内容(){ 查找(3)

Generics 从RX单个/可观察到的集合映射元素

在我的项目中,我使用RxJava/RxKotlin绑定与restapi通信。API有时会返回一个元素列表,在我使用它们之前,这些元素需要修改/映射 目前,这些元素的映射由嵌套的.map()和.apply()函数完成,如下所示: fun getSampleObjects(): Single<List<SampleObject>> = sampleService.getSampleObjects() .map { list ->

Generics 如何在没有给定类型声明的情况下测试F#和类型转换中的基元类型 这是我认为强>类型检查< >任何类型的方法,通过模式匹配< /强>,比我所看到的其他所有方法都好。

如果您需要一种简单检查原始类型的方法 我在用F#制作一个Lexer和parser生成器的工作中提出了这一点,无需代码生成、DFA性能和即时类型检查 假设我们有一个syntaks树,您不知道它的外观,甚至不知道它包含哪些类型,但您需要在某个时间点构建它,在此之前可能需要有一个不同类型的集合 这与F#的一般类型系统背道而驰 我使用obj,它可以是任何东西 type Type = Type of obj 我们定义了一个简单地延迟工作的函数类型 Type delay = Delay of (unit

Generics 如何将实例化的泛型函数导出到C

我创建了一个具有导出和约定方面的通用函数。然后我实例化了这个函数,但它在我的库中以'r'后缀结束。为什么会发生这种情况,我如何解决 例如: generic I : int; function Test_Generic return int with Export => True, Convention => C; function Test_Generic return int is begin return I; end; function Test is n

Generics 将非大小和基于动态分派的特征作为参数传递的问题

我正在尝试编程一个传感器网络(下面称为Query),它们相互馈入 查询 编辑:,感谢@eggyal这是否回答了您的问题?我专注于在管道和PushSink中保留所拥有的值,但是,如果不知道您想要如何使用它,就很难知道它是否适合您的用例。也可以简单地使用具体的Sink类型,而不是Query中的Sinktrait对象,并去掉编译器抱怨的大小的边界。但是,如果您在其他地方使用Sinktrait对象,这可能不适用于您。 error[E0277]: the size for values of type `

上一页 1 2  3   4   5   6    7   8   9  ... 下一页 最后一页 共 66 页