小编use*_*000的帖子

Scala:'覆盖'的目的是什么?

我不确定override关键字的用途是什么,在scala中.如果我有

trait Shape { def foo(v: Int) }
class Triangle extends Shape { override def foo(v: Int) {} }
Run Code Online (Sandbox Code Playgroud)

它表现得(显然至少)与没有完全相同override.

scala

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

CMake包括路径

在C++项目中,我将包含头文件作为项目源目录的后代,而不使用UNIX目录快捷方式.要么 .. .我不知道如何配置cmake来使用它.

我有目录结构:

Root
|-include
| |- foo.h
|-src
| | foo.cpp
Run Code Online (Sandbox Code Playgroud)

c++ cmake

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

修剪OpenCSV中的前导和尾随空格

我正在使用OpenCSV CSVReader来读取文件中的一些逗号分隔值.我不确定如何修剪前导和尾随空格.当然,我能做到,String.trim()但不要那么干净.在文档中没有指定这样的选项.

java trim opencsv

9
推荐指数
1
解决办法
4061
查看次数

scala notify()vs notifyAll()

鉴于scala中生产者 - 消费者问题的以下实现

class PC {
  var buffer = null.asInstanceOf[Int]
  var set = false

  def produce(value: Int) = synchronized {
    while (set) wait()
    buffer = value
    set = true
    notify() }

  def consume: Int = synchronized {
    while (!set) wait()
    val result = buffer
    set = false
    notify()
    return result; }
}
Run Code Online (Sandbox Code Playgroud)

有三件事我不太明白:

  1. 为什么,如果我使用notify而不是notifyAll,我最终陷入僵局; 我应该在哪里使用notifyAll,用于生产或消费?

  2. 我不应该有一个对象,例如lock,并调用lock.synchronized,lock.wait和lock.notify?为什么它会这样工作,不产生和消费有2个不同的监视器关联?为什么"通知"来自生产通知"等待"消费?

  3. 监视器如何在scala中完全工作(在我们的例子中)?它是否使用信号继续策略?如何将某个条件下等待队列的进程移动到可运行队列?每个条件/锁都有一个队列(例如lock1.wait,lock2.wait等).

multithreading scala

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

通用特征的案例对象

在Scala中:我想定义一个类型Message [T](它需要有这个签名),它可以是一个包含T类型数据或隐式消息的消息.我有

trait Message[T]
case object ImplicitMessage extends Message <- obviously doesn't compile
case class DataMessage[T](d: T) extends Message[T]
Run Code Online (Sandbox Code Playgroud)

我该如何定义ImplicitMessage?我可以把它变成一个案例类,但这显然不是那么好,因为它只需要一个实例.

更新:我知道我可以简单地从消息中删除[T],但我不能(要求).

scala traits

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

MSD与LSD基数排序

我不确定为什么会使用LSD基数排序.

MSD的优点:

  1. 它可以处理可变长度的字符串
  2. 它并不总是需要扫描整个字符串(它可以更快地决定订单)
  3. 可以使用插入排序来规避计数排序的缺点.

sorting algorithm radix-sort

5
推荐指数
1
解决办法
4320
查看次数

(重新)在scala中定义()

假设我在scala中有一个MyList类,列表作为私有成员.是否有可能为我的类定义"()"以在给出正索引的情况下返回预期的东西,并在负的情况下从结尾开始(就像在python中一样)?

scala

4
推荐指数
1
解决办法
112
查看次数

使课程可打印

当我将某些类(例如ArrayList)的实例打印到流(例如System.out.println(ArrayList的实例)时),它不会打印引用ID(例如ArrayList @ 2144c53d),而是打印实际值,并使用一些格式(例如[1,2] 3,4]).我想知道如何为自己的班级做这件事?我是否可能需要定义一些方法/实现一些接口?

java

4
推荐指数
1
解决办法
934
查看次数

将struct指针转换为char*并复制

我有以下代码

struct Info { int age; char name[5]; }
char buffer[20];
Info i;
i.age = 10;
sprintf(i.name, "Case");
strncpy(buffer+5, (char*)&i, sizeof(Info));
Run Code Online (Sandbox Code Playgroud)

现在我想要恢复记录

Info j;
strncpy((char*)&j, buffer+5, sizeof(Info));
printf("%d %s", j.age, j.name);
Run Code Online (Sandbox Code Playgroud)

但是,这会打印名称的空字符串.我不确定我做错了什么.

c pointers

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

使bash区分Ctrl- <letter>和Ctrl-Shift- <letter>

我想知道是否有任何方法可以使bash为包含shift键的组合键发送不同的代码?例如,(Ctrl+ V显示我)Ctrl+ NCtrl+ Shift+ N被解释为相同(^ N).或者是否有可以发挥作用的终端?或者可以打击我修改,以便它呢?

linux bash

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

如何以匿名函数/函数文字返回?

我不确定如何return在匿名函数中使用关键字(或者我应该以不同的方式解决我的问题?).

它现在的方式,return实际上是指封闭功能.

()=>{
  if (someMethodThatReturnsBoolean()) return true
  // otherwise do stuff here
}:Boolean
Run Code Online (Sandbox Code Playgroud)

scala

0
推荐指数
1
解决办法
254
查看次数

标签 统计

scala ×5

java ×2

algorithm ×1

bash ×1

c ×1

c++ ×1

cmake ×1

linux ×1

multithreading ×1

opencsv ×1

pointers ×1

radix-sort ×1

sorting ×1

traits ×1

trim ×1