问题标签 [construction]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
matrix - 在 Octave 中构造一个矩阵
我有一个向量 idx = [3; 5个;3;4;3;2;5个;1]。该数字来自 1:k,k = 5。我想制作一个“k by m”矩阵 A(m 是向量 idx 中的元素数)。A 的每一行包含“0”或“1”,其中“1”由向量 idx 的索引指示。例如,A (k = 3) 的第三行在第 1、3、5 列是“1”,因为这些是 idx 中“3”的索引。所以 A =
[0 0 0 0 0 0 0 1; 0 0 0 0 1 0 0 0;1 0 1 0 1 0 0 0;0 0 0 1 0 0 0 0;0 1 0 0 0 0 1 0]
我怎样才能在 Octave 中做到这一点?谢谢!
javascript - 在 Javascript lib 中使用 library(element).function() 或 library.function() 构造
我们有 Javascript 库:
我们应该什么时候创建像 (1) 这样的函数,什么时候像 (2) 那样创建函数?
当然,如果它需要获取一个元素,我们总是会使用(1),比如 MyLib().myFunc(),对吗?
对于所有不影响元素的情况,我们应该创建(2),例如 MyLib.myFunc()?
可能我们错过了变量保护的东西吗?
java - 使用 java.net.URL 在 java 中构造不正确的 URL?
使用 oracle java 1.8.0_25
我有以下构造
根据https://docs.oracle.com/javase/tutorial/networking/urls/creatingUrls.html
中的文档,
它应该产生的 URLhttp://localhost:4567/123/asd
但它产生http://localhost:4567/asd
该文件指出
此代码片段使用 URL 构造函数,可让您从另一个 URL 对象(基础)和相对 URL 规范创建 URL 对象。这个构造函数的一般形式是:
URL(URL baseURL, String relativeURL)
第一个参数是一个 URL 对象,它指定新 URL 的基础。第二个参数是一个字符串,它指定相对于基础的资源名称的其余部分。如果 baseURL 为 null,则此构造函数将 relativeURL 视为绝对 URL 规范。相反,如果 relativeURL 是绝对 URL 规范,则构造函数将忽略 baseURL。
这是正确的行为吗?
java - java.net.URL 构建 URL 的错误?
该构造new URL(new URL(new URL("http://localhost:4567"), "abc"), "def")
产生(恕我直言不正确)这个网址:http://localhost:4567/def
虽然构造new URL(new URL(new URL("http://localhost:4567"), "abc/"), "def")
产生正确的(我想要的)url:http://localhost:4567/abc/def
区别在于abc
构造函数参数中的尾部斜杠。
这是预期的行为还是应该在 URL 类中修复的错误?
毕竟,当您使用一些帮助类进行 URL 构造时,我们的想法是不必担心斜线。
mesh - 网格到网格。网格拟合(平均)。网格比较。
我有 3 组点云代表一个表面。我想用这些点云来构造三角形网格,然后用网格来表示表面。每组点云都以不同的方式收集,因此它们对该表面的表示是不同的。例如,一些集合可以表示具有较小“误差”的表面。我的问题是:(1)评估这种网格到表面“错误”的最佳方法是什么?(2)是否有成熟/可靠的方法将点云转换为三角形网格?我发现一些软件可以做到这一点,但大多数都需要大量的手动调整。(3) 转换后我得到三个网格。我想使用第四个网格,即 Mesh4,来“拟合”三个网格,并获得三个网格的“平均”网格。然后我可以使用这个 Mesh4 作为底层表面的表示。我怎样才能做/称这个“网格到网格”拟合?是成熟的技术吗?非常感谢您的宝贵时间!
java - 说话的文字导致应用程序崩溃(Android工作室)
我猜这是启动/构造的错误,但参数似乎是正确的,我找不到任何其他问题。这是整个活动代码。文本转语音方法和调用它的方法位于最底部,oninit 方法在 on create 之后不久。运行时,它不会崩溃,它会激活语音引擎,但从不说话。我将控制台消息放在错误部分
c++ - 如何在工厂设计中支持多个构造签名?
我正在使用以下(简化的)工厂设计来创建一些继承层次结构的对象,应该没有什么特别的:
现在,一旦我想创建具有不同构造函数签名的子类,我就会遇到问题,因为工厂在整个继承层次结构上施加了固定签名。即对于以下类,我无法通过工厂构造指定新的第三个参数,而无需再次将这个扩展签名强加于我的层次结构的所有其他类。
有没有办法在不进行主要更改的情况下使这项工作与我当前的设计一起使用?我正在考虑使用模板或绑定对象来使不同的参数调用成为可能。或者在这种情况下您会建议与工厂设计不同的解决方案吗?
c++ - 利用容器的移动语义和元素初始化
经常看到使用 STL 算法的示例使用列表初始化的容器来说明,例如:
但是当这种方法用于(重量级)类(与int
s 不同)时,它意味着对这些类进行过多的复制操作,即使它们是通过右值(移动到)传递的,因为std::initializer_list
在上面的示例中使用只提供const_iterator
s。
为了解决这个问题,我使用以下 (C++17) 方法:
但是当我执行以下操作时,它变得不令人满意:
在这里,我想通过移动操作替换复制操作来为每个值保存一个复制操作(假设移动A
或者B
比复制便宜得多),但通常不能,因为函数参数的评估顺序是在 C++ 中未定义。我目前的解决方案是:
在构造函数的主体中进行一些重要的工作通常被认为是一种不好的做法,但在这里我集中使用了列表初始化的特性——它是严格从左到右排序的事实。
从某个特定的角度来看,这是完全错误的方法吗?除了上面提到的那个之外,这种方法的缺点是什么?目前是否有另一种技术可以实现可预测的函数参数评估顺序(在 C++11、C++14、C++1z 中)?