小编Gar*_*ker的帖子

在集成调试器中,有一个隐式变量用于异常

我想在调试器中检查异常。

当我有

except on e:exception do
Run Code Online (Sandbox Code Playgroud)

这很简单,我可以检查一下e变量

但是,许多异常处理程序没有on e:exception子句。

是否有可以检查的特殊变量(例如$ exception)或其他不需要更改源的异常检查方法。

我记得这样做(尽管内存可能有问题),但是还没有找到一种方法来做到这一点。

delphi debugging

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

Windows 上的 Ruby 2.0 连接到 MS SQL varchar(max) 截断为 2048

背景:我编写了一些 ruby​​ 转换脚本,它们从 MS SQL 获取数据进行转换,然后将其存储回数据库我正在使用微型 tds gem,它可以在 freetds 上工作

--问题:对于 sql 中 varchar max 且字符串长度大于 2048 的列,当使用微小 tds 提取数据时,这些列会被截断为 2048 长度。

Freetds 协议 7.2 确实解决了这个问题,但在 Windows 平台上不可用,代码在 Mac 上完美运行。但由于与 ETL 工具集成,我必须将其部署在 Windows 计算机上。

——有没有人能解决这个问题。

ruby sql-server freetds varcharmax

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

timeit 偶尔返回负值,timeit 中可能存在错误

我曾研究过Project Euler问题并决定添加时间,因此通过以下代码段添加timeit到时间main()(为方便起见,将全局存储RESULTmain()中)

t = timeit.timeit(main, 'gc.enable()', number=1)
print("# Euler", PROBLEM, ".py RESULT: ", RESULT))
Run Code Online (Sandbox Code Playgroud)

工作正常。但是,有些人跑得太快了,我以为我可以做到这一点。

t = timeit.timeit(main, 'gc.enable()', number=1)
if (t < 0.001):
    t2 = timeit.timeit(main, 'gc.enable()', number=1000)
Run Code Online (Sandbox Code Playgroud)

它有时有效。但是,如果我反复运行它,我有时会得到 t2 的负值。例如,使用 Euler #2,我通过连续运行 5 次得到这些结果。

# Euler2.py RESULT: 4613732  3.17869758716347e-05 seconds
repeats timing  -3.7966224778973e-05 sec per call

# Euler2.py RESULT: 4613732  3.1558464885145785e-05 seconds
repeats timing  2.4836235955056177e-05 sec per call

# Euler2.py RESULT: 4613732  3.131149340411519e-05 seconds
repeats timing  -3.5684903805855466e-05 sec …
Run Code Online (Sandbox Code Playgroud)

python time

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

为什么我会收到预期的E2029声明,但发现了'终结'

我没有看到任何语法错误,我的代码编译干净没有完成部分.这是该单元的最后几行.

function boolAsTF(b:boolean): string; inline;
begin
  if b then result := 'T' else result := 'F';
end;

finalization
  SyncMgr.Free;
end.
Run Code Online (Sandbox Code Playgroud)

delphi

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

标签 统计

delphi ×2

debugging ×1

freetds ×1

python ×1

ruby ×1

sql-server ×1

time ×1

varcharmax ×1