小编mis*_*tor的帖子

为什么我们在C++中没有<cstdfloat>?

为什么C++没有<cstdfloat>标头用于浮点数,就像它有整数的<cstdint>一样?

编辑:

通过<cstdfloat>我的意思是为float和double提供typedef的头文件.就像Qt中的qreal typedef一样.希望我的问题现在很明确.

c++ cstdint

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

设计模式挫折

我是一名拥有4年.Net编码经验的开发人员,从不关心我的设计模式.最近我被要求接受IT部门的一位大佬的采访,已经完成了5轮(解决问题,配对编程,逻辑推理,2轮技术面试)的采访,并没有提供工作.

我从他们那里获得的反馈是不擅长设计原则,尽管他们对我的技术和逻辑推理技巧感到满意.这个让我觉得知道设计模式是解决问题的唯一方法吗?

虽然我从未在编码中使用过很多设计模式,但我总是试图实现OOPS的基本原理

我可以使用这些原则来设计一个松散耦合和开放的系统,以增强和易于维护.事实上,这些是所有设计模式的核心结构.

但我的问题是为正确的问题找到一个正确的模式.我知道只有阅读设计模式和实践中出版的所有书籍才能获得这些知识.这些知识伴随着构建不同系统的经验.

是否有任何用例可用于模式问题匹配 ..您对学习设计原则的建议是什么?

干杯

c# language-agnostic design-patterns

6
推荐指数
3
解决办法
762
查看次数

单击按钮后强制重新绘制

考虑一下scala swing代码

detail.reactions += {
  case ButtonClicked(but) =>
    detail.contents += new Label(but.text)
    detail.background = new java.awt.Color(0,255,0)
}
Run Code Online (Sandbox Code Playgroud)

detail是的FlowPanel类型.单击该按钮时,颜色会立即重新绘制,但事实Label并非如此.当我点击该区域时它会变得可见.如何detail在点击后强制重新绘制其内容?

java events swing scala

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

case-class上的`productElement(i)`是否使用反射?

考虑以下Scala片段:

case class Foo(v1: String, v2: Int, v3: Any)

def inspect(p: Product) =
  (0 until p.productArity).foreach(i => println(p.productElement(i)))

inspect(Foo("Moin", 77, null))
Run Code Online (Sandbox Code Playgroud)

inspect()这里的调用是否意味着使用反射(以任何方式)?

我想以某种方式能够访问案例类的字段,而不必明确地引用它们,例如foo.v1,我喜欢不需要反射的解决方案,因为我希望它需要一些开销.

reflection scala field product case-class

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

隐式参数解析 - 设置优先级

我正在尝试创建一个类型类Default,它提供给定类型的默认值.这是我到目前为止提出的:

trait Default[A] {
  def value: A
}

object Default {
  def withValue[A](a: A) = new Default[A] {
    def value = a
  }

  def default[A : Default]: A = implicitly[Default[A]].value

  implicit val forBoolean = withValue(false)

  implicit def forNumeric[A : Numeric] = 
    withValue(implicitly[Numeric[A]].zero)

  implicit val forChar = withValue(' ')

  implicit val forString = withValue("")

  implicit def forOption[A] = withValue(None : Option[A])

  implicit def forAnyRef[A >: Null] = withValue(null : A)
}

case class Person(name: String, age: Int)

case class …
Run Code Online (Sandbox Code Playgroud)

scala implicit

6
推荐指数
2
解决办法
729
查看次数

编写通用的"填充"方法

我正在尝试编写一个通用fill方法,以下是我到目前为止所提出的方法:

scala> import collection.generic.{GenericTraversableTemplate => GTT}
import collection.generic.{GenericTraversableTemplate=>GTT}

scala> import collection.generic.{TraversableFactory => TF}
import collection.generic.{TraversableFactory=>TF}

scala> def fill[A, CC[X] <: Traversable[X] with GTT[X, CC]]
     |   (n: Int)(elem: => A)(tf: TF[CC]) = tf.fill(n)(elem)
fill: [A, CC[X] <: Traversable[X] with scala.collection.generic.GenericTraversab
leTemplate[X,CC]](n: Int)(elem: => A)(tf: scala.collection.generic.TraversableFa
ctory[CC])CC[A]

scala> fill(3)('d')(List)
res42: List[Char] = List(d, d, d)
Run Code Online (Sandbox Code Playgroud)

这适用于除数组之外的所有可遍历集合.如何使此代码与数组一起使用?

collections scala scala-collections

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

是否可以将呈现的案例优化为一个循环?

假设我有两个函数f :: [a] -> bg :: [a] -> c.我有以下两个问题:

  1. 如果我执行(f &&& g) xs,其中xs :: [a],如果都fg涉及循环,有可能是编译器这两个循环优化成一个?(请注意,我不是在问一些特定的Haskell编译器是否实现了这一点.我想知道这样的事情是否可行.)

  2. 类型类中的traverse函数可以Traverse帮助我进行这样的优化,包括以下几行:

    traverse (someCombinator f g) xs
    
    Run Code Online (Sandbox Code Playgroud)

haskell functional-programming combinators

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

符合给定条件的Scala/Java ORM

哪些Scala ORM适合并满足以下要求?

  • 足够类型安全.
  • 不受22个字段的限制.
  • 适用于MySQL 5.5.
  • 适用于Scala 2.9.1.
  • 生产就绪.

如果没有Scala ORM符合标准,请建议使用Java备选方案.谢谢.

java orm scala

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

单例类型中的表面不一致

我有几个关于单例类型的问题,但由于它们都非常密切相关,我将它们发布在同一个线程下.

Q1.为什么#1不编译但#2呢?

def id(x: Any): x.type = x      // #1
def id(x: AnyRef): x.type = x   // #2
Run Code Online (Sandbox Code Playgroud)

Q2.在String我尝试的其他引用类型的情况下,正确推断出类型.为什么会这样?

scala> id("hello")
res3: String = hello

scala> id(BigInt(9))
res4: AnyRef = 9

scala> class Foo
defined class Foo

scala> id(new Foo)
res5: AnyRef = Foo@7c5c5601
Run Code Online (Sandbox Code Playgroud)

types type-systems programming-languages scala singleton-type

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

在将来的代码中使用synchronized/locks

我们正在使用Scala,Play框架和MongoDB(使用ReactiveMongo作为我们的驱动程序)构建Web应用程序.应用程序架构是端到端的非阻塞.

在我们代码的某些部分,我们需要访问一些非线程安全的库,例如Scala的解析器组合器,Scala的反射等.我们目前正在用synchronized块封闭这些调用.我有两个问题:

  1. 使用synchronizedfuture-y代码时是否有任何需要注意的问题?
  2. 从性能和可用性的角度来看,使用锁(例如ReentrantLock)而不是使用锁是否更好synchronized

java concurrency scala akka playframework-2.0

6
推荐指数
2
解决办法
2430
查看次数