标签: linearization

继承一个特征两次

这不起作用:

trait Trait
class Class extends Trait with Trait
Run Code Online (Sandbox Code Playgroud)

编译抱怨:

<console>:8: error: trait Trait is inherited twice
       class Class extends Trait with Trait
                           ^
<console>:8: error: trait Trait is inherited twice
       class Class extends Trait with Trait
                                      ^
Run Code Online (Sandbox Code Playgroud)

这样做:

trait Trait
class Abstraction extends Trait
class Implementation extends Abstraction with Trait
Run Code Online (Sandbox Code Playgroud)

问题:

  • 它为什么有效?
  • 第二个片段有何不同?(关于双重继承问题)
  • 第二个片段或模式是否有用?

inheritance scala linearization

18
推荐指数
1
解决办法
1249
查看次数

Scala特征混合秩序和超级呼叫

我有这个代码:

trait base{
  def msg: Unit= {
    println{"base"}
  }
}

trait foo extends base {
  abstract override def msg: Unit ={
    super.msg
    println("foo")
  }
}

class base2{
  def msg:Unit = {
    println{"base 2"}
  }
}

class test extends base2 with foo{
   override def msg: Unit ={
    super.msg
    println("done")
  }
}
Run Code Online (Sandbox Code Playgroud)

如果我打电话(new test).msg,这打印出如下内容:base, foo, done

但是,如果我将基本特征更改为:

trait base{
  def msg: Unit
}
Run Code Online (Sandbox Code Playgroud)

它打印出如下内容: base 2, foo, done

我理解with从右到左的顺序(最后一个先来)但是怎么样extends?为什么有时会打印base2,但有时base呢?

scala linearization traits mixins

7
推荐指数
1
解决办法
2386
查看次数

Modelica linear analysis

I am new into Modelica/Dymola-modeling. I started to model fluid models for my master-thesis (pipes, heaters, control). My professor suggested: Check the eigenvalues of the systems and the ratio of them (and if the systems is stiff). So did the following:

  • Linear analysis
  • Full linear analysis
  • SimulationSetup: linearizeAtInitial = false; t_linearize = 1000 (that the system is in operation mode (after initialization)

The simulation restuls are Ok.

But the linear analysis says: The system is not stable --> what does …

linearization eigenvalue modelica

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

MongoDb 可线性化读取关注限制

有人可以向我解释Mongodb 线性化阅读关注文档的某些部分:

可线性化读取关注保证仅适用于读取操作指定唯一标识单个文档的查询过滤器的情况。

这是否意味着我必须在查询过滤器中显示的字段上有唯一索引

例如,让我们回答 4 个问题:

  1. test在 A 字段上没有唯一索引的集合。db.test.find({A:1}).readConcern("linearizable").maxTimeMS(10000)

    它是否可以线性化并且我无法读取过时?如果回答yes,是否意味着没有理由在未出现在唯一索引中的字段读取中使用线性化读取关注

  2. test在 A 字段上有唯一索引的集合。
    db.test.ensureIndex({A:1}, {unique:true}); db.test.find({A:1}).readConcern("linearizable").maxTimeMS(10000);

    它是否可以线性化并且我无法读取过时

  3. test在 A 字段上有唯一索引的集合。
    db.test.ensureIndex({A:1}, {unique:true}); db.test.find({A:1, B:1}).readConcern("linearizable").maxTimeMS(10000);

    它是否可以线性化并且我无法读取过时

  4. test在 A 字段上没有唯一索引的集合。但是 find 方法在结果中只返回一个文档。
    db.test.find({A:1}).readConcern("linearizable").maxTimeMS(10000); //returned {_id:"someId", A:1}

    它是否可以线性化并且我无法读取过时

database linearization database-administration mongodb mongodb-query

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

禁用 PDF 文件的快速 Web 查看

我一直在尝试使 PHP 程序使用 FPDF 使用数据库中的数据自动填充 PDF 文件,但出现此错误

FPDF-Merge 错误:不支持快速 Web 查看模式

我一直在寻找一个免费程序,它不会留下水印或修改删除快速 Web 视图的 PDF,但找不到。有什么办法可以禁用它吗?

php pdf linearization fpdf

2
推荐指数
1
解决办法
4870
查看次数

为什么不从不同的继承分支覆盖纯虚方法?

我有这个,也许有点复杂的类层次结构:

class BS {
  public:
    virtual void meth()=0;
};

class BCA : public virtual BS {
};

class BSS : public virtual BS {
};

class BCS : public virtual BCA, public virtual BSS {
};

class BI4 {
  public:
    void meth() {};
};

class BT4 : public virtual BI4, public virtual BSS {
};

class T4 : public virtual BCS, public virtual BT4 {
};

int main() {
  T4 t4;
};
Run Code Online (Sandbox Code Playgroud)

现在的问题是虽然void meth()继承图中有可用的,但是这个代码不会编译:

$ g++ -c t.cc …
Run Code Online (Sandbox Code Playgroud)

c++ virtual-functions linearization c++11

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