types相关内容

添加到Julia中的集合时重载对象比较?

有没有办法重载 Base.Set 如何在 Julia 中进行对象比较? 我尝试重载 isequal 和 ==,但我的对象本应相同时仍被标记为不同. 例如 类型测试X是的结尾函数 ==(a::Test, b::Test)返回 a.x == b.x &&a.y == b.y结尾设置([测试(2,3),测试(2,3)]) 给予 Set([Test(2,3),Test(2,3)]) 解 ..
发布时间:2022-01-23 20:04:51 其他开发

在 Julia 中使用 @code_warntype

当尝试编写类型稳定的代码时,使用 @code_warntype 进行检查,我应该只担心没有任何 Any 或 Union变量部分还是我也应该检查正文部分? 解决方案 根据您的 julia 版本,@code_warntype 有时可以标记某些无害的表达式.通过一些练习,您可以轻松识别这些表达式(例如,它们通常与模块/名称查找有关). 正如 Reza 所说,最简单的方法是查看变量部分和函数 ..
发布时间:2022-01-23 19:58:21 其他开发

类型稳定性如何让 Julia 如此之快?

我听说类型稳定性是 Julia 如此快速的原因,同时仍然像 Python 等其他解释型语言一样具有表现力. 解决方案 类型稳定性允许编译器在编译时直接从输入类型确定函数的输出类型.因为 Julia 专门针对每种输入类型进行编译,这意味着如果所有函数都是类型稳定的,编译器可以推断出函数调用中每个值的类型.发生这种情况时,Julia 的 JIT 编译器本质上将创建该方法的静态类型版本并构建 L ..
发布时间:2022-01-23 19:54:45 其他开发

Go 中复杂键字典的唯一性,但 Julia 中没有?

在 GO 中,当我使用结构作为映射的键时,键是唯一的. 例如,以下代码生成一个只有一个键的地图:map[{x 1}:1] 主包进口 (“fmt")类型 MyT 结构 {一个字符串整数}功能主要(){dic := make(map[MyT]int)对于我:= 1;我 我尝试在 Julia 中做同样的事情,但我有一个奇怪的惊喜: 这个 Julia 代码,类似于 GO 代码,生成一个包 ..
发布时间:2022-01-23 19:44:43 其他开发

如何解决“UndefVarError: T 未定义"在函数签名中

我正在尝试运行(别人的代码),看起来像 函数 f{T 当我“使用"那个文件时 UndefVarError: T 未定义堆栈跟踪:[1] [文件位置]的顶级范围:[上述函数定义的行号] 根据我在文档中阅读的内容(https://docs.julialang.org/en/v1/base/numbers/),看起来上面的语法是正确的.知道为什么会出现此错误吗? 解决方案 这是旧的 Ju ..
发布时间:2022-01-23 19:43:31 其他开发

防止 Julia 自动转换一维矩阵切片的类型

alpha = [1 2 3;4 5 6]alpha[:, 1] # 类型是 Array{Int64, 1}alpha[:, 1:2] # 类型是 Array{In64, 2} 我只是想阻止自动类型转换,但我很难弄清楚如何做到这一点.是的,我可以直接使用 alpha[:, 1]'',但我想防止内存重新分配.vec() 用于另一个方向(1xn 矩阵),但我找不到将 (nx1) 矩阵保持为矩阵的函数 ..
发布时间:2022-01-23 19:26:29 其他开发

如何获取 Julia 对象的字段

给定一个复合类型的 Julia 对象,如何确定它的字段? 如果您在 REPL 中工作,我知道一个解决方案:首先您通过调用 typeof 确定对象的类型,然后进入帮助模式 (?),然后查找类型.有没有更程序化的方式来实现同样的目标? 解决方案 适用于 v0.7+ 使用 fieldnames(x),其中 x 是 DataType.例如,使用 fieldnames(Date), 代替 ..
发布时间:2022-01-23 19:10:36 其他开发

如何写“好"处理多种类型和数组时的 Julia 代码(多次分派)

OP 更新:请注意,在最新版本的 Julia (v0.5) 中,回答这个问题的惯用方法是定义 mysquare(x::Number) = x^2.使用自动广播覆盖矢量化案例,即 x = randn(5) ;mysquare.(x).另请参阅更详细地解释点语法的新答案. 我是 Julia 新手,鉴于我的 Matlab 出身,我很难确定如何编写利用多重调度和 Julia 类型系统的“好的"Jul ..
发布时间:2022-01-23 19:08:23 其他开发

将 Null 值分配给 DataTable 中的整数列

我有一个数据表,其中一个 ColumnName "CustomerID" 和 Integer DataType.我想动态地将行添加到 DataTable.为此,我创建了一个 DataRow 对象,例如: DataTable dt = new DataTable();数据行 DR = dt.NewRow();DR["CustomerID"] = Convert.ToInt32(TextBox1. ..
发布时间:2022-01-22 19:41:07 C#/.NET

HLists 只不过是一种复杂的元组编写方式吗?

我真的很想找出差异在哪里,更一般地说,是找出不能使用 HList 的规范用例(或者更确切地说,与常规列表相比,不会产生任何好处). (我知道 Scala 中有 22 个(我相信)TupleN,而一个只需要一个 HList,但这不是我感兴趣的那种概念差异.) 我在下面的文字中标记了几个问题.实际上可能没有必要回答它们,它们更多是为了指出我不清楚的事情,并引导讨论朝着某些方向发展. ..
发布时间:2022-01-19 23:44:46 其他开发

如何在 C 中使用布尔数据类型?

我只是用 C 编写代码,结果发现它没有布尔/布尔数据类型.是否有任何 C 库可以包含以使我能够返回 boolean/bool 数据类型? 解决方案 如果你有支持 C99 的编译器,你可以 #include 否则,您可以根据需要定义自己的.根据您的使用方式(以及您是否希望能够将代码编译为 C++),您的实现可能很简单: #define bool int#定义真1 ..
发布时间:2022-01-19 17:37:52 其他开发

布尔在内存中如何表示?

正如已经在 文档中讨论过的,一个 bool 数据类型至少占用一个字节的内存.之前在 SO 上提出了类似的问题(How a bool类型变量是否存储在内存中?(C++)),但是这个讨论和文档似乎只讨论布尔数据类型占用的空间量,而不是实际发生的情况在内存中当我这样做时: bool b = true; 那么内存中到底发生了什么?未用于存储此信息的 7 位会发生什么?标准是否为此规定了行为? ..
发布时间:2022-01-19 17:19:53 C/C++开发