小编Mas*_*ler的帖子

为什么 go build 什么都不做?

我在工作中遇到了一个奇怪的问题。

我有一个项目。在这个项目中有两个包,每个包都在自己的文件夹中。每个文件夹都包含.go属于该包的各种文件。

在文件夹 A 中,如果我说go build -v,我会得到它正在构建的东西的列表。

在文件夹 B 中,如果我说go build -v,我会立即返回而没有输出。

这两个文件夹只包含.go文件,并且没有容易识别的原因为什么它在一个文件夹中构建代码而在另一个文件夹中不构建任何内容。

go version 返回 go version go1.7.5 linux/amd64

我到底怎么知道这里发生了什么?

编辑:澄清评论中提出的问题:

package main两个文件夹中都没有。在文件夹 A 下,在适当的位置go install生成一个.a文件$GOPATH/pkg。在文件夹 B 中,go install没有。它什么都不做,默默地失败。这里出现了一些合法的错误。

来自评论的建议补救措施包括使用-a标志(错误出现在看起来完全无关的事情上)和使用-x标志。该-x标志应该给出极其详细的输出,但它是无用的,输出单行引用构建终止后不存在的临时文件,例如WORK=/tmp/go-build026498757.

go

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

如何在D2009中使用PNG?

Delphi 2009的一个广告功能是PNG支持.这很好,因为Unicode问题打破了我之前使用的pngimage.pas库.唯一的问题是,我找不到 Delphi 2009版本.任何人都知道它的名称,以及将现有的基于pngimage.pas的代码迁移到新库有多困难?

delphi png

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

在数据集中存储Delphi集的最佳方法是什么?

标题基本概括了所有内容.我正在使用TClientDataset来存储一个对象数组,其中一个对象的成员被定义为一枚举类型.据我所知,Delphi集是位域,其大小可以在1到32个字节之间变化,具体取决于它们包含多少数据,而Delphi没有定义TSetField.我应该使用什么样的字段来加载这个值?

delphi set dataset

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

如何伪造表单测试输入?

我正在为我的Delphi 2009应用程序构建测试工具.测试逻辑非常简单.确保表单正常工作证明有点复杂.我想要一种方法来模拟真实的用户输入,打开一个表单,让它认为用户键入某些东西并点击某些地方,并确保它正确反应.我确定有办法做到这一点,我只是不知道它是什么.有谁知道怎么做?

delphi testing events input

6
推荐指数
2
解决办法
1187
查看次数

如何防止Vista在例外情况下杀死我的程序?

过去,如果异常被引发并在调用堆栈中传播得足够远,Application的主循环将处理它并为您提供一个对话框.在Windows Vista下,这种行为似乎被打破了.如果任何异常达到该级别,Vista会介入,并表示该程序"已停止工作",此时它曾完全能够在XP下继续运行.(这就是主循环中异常处理程序存在的全部原因,为了上帝的缘故!)

有没有什么办法解决这一问题?最好是在我的代码本身而不仅仅是在我的计算机上,所以它不会搞砸其他系统?

delphi exception-handling windows-vista

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

有没有简单的方法来测试两个PNG的相等性?

我有一堆PNG图像,我正在寻找一种识别重复的方法.通过重复,我的意思是,具体地说,两个PNG文件的未压缩图像数据是相同的,不一定是其文件相同.这意味着我不能像比较CRC哈希值那样简单.

我认为这可以实际上可靠地完成,因为PNG使用无损压缩,但我担心速度.我知道我可以通过首先测试相同尺寸来稍微减少一些东西,但是当实际比较图像时,有没有什么方法可以合理有效地做到这一点?(也就是说,比"双重循环检查像素值相互比较"的暴力方法更快?)

delphi algorithm png

6
推荐指数
3
解决办法
356
查看次数

变体递归使用自己?

我正在尝试构建一个rtl140.bpl的调试版本,以便更轻松地使用运行时包调试应用程序.我构建了DPK并在其上运行了DCC32,然后它就进入了,然后就死了.

C:\ Program Files(x86)\ Embarcadero\RAD Studio\7.0\source\Win32\rtl\sys\Variants.pas(1072)致命:F2092程序或单位'Variants'递归使用自身

但是看看Variants.pas,我看不出怎么样.它只在接口部分使用SysUtils和Types,它们都不使用Variants,也不使用任何使用Variants的东西.

有谁知道为什么这会破坏?

delphi delphi-2010

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

是什么导致饼图出现"挤压"?

我有一个用TeeChart创建的饼图,它在我开发的系统上看起来很好,但是当我在另一台机器上运行它时,"馅饼"出来都被压成椭圆形而不是圆形.

我确保该Circled属性(应确保绘制的内容始终是圆形,而不是椭圆形)在TPieSeries设置为True并且不会在任何地方更改.

我检查确保这不是不同屏幕分辨率的工件.不是; 另一个系统与我的开发盒的分辨率相同.

另一个系统关闭了Aero.我通过在我的开发盒上关闭Aero测试了一些东西,并且图表没有被压扁.

在这一点上,我基本上没有想法.有谁知道什么可以导致饼图被设置Circled = true为绘制为椭圆形而不是圆形?

好: 好的饼图 坏: 坏饼图

这是完全相同的程序,在两台不同的计算机上以完全相同的屏幕分辨率处理完全相同的数据.

编辑: 正如评论中所讨论的,我对此进行了测试,发现两个系统不仅具有相同的分辨率,而且具有相同的DPI.

delphi teechart

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

这个C++的演员代码在做什么?

在此处找到:https://github.com/tpaviot/oce/blob/master/src/BRepAdaptor/BRepAdaptor_Curve.cxx

我想知道的是:

((GeomAdaptor_Curve*) (void*) &myCurve)->Load(C,First,Last);

myCurve已被定义为GeomAdaptor_Curve.所以看起来它正在将指针转换myCurve为a void*,然后将其转换为a GeomAdaptor_Curve*,然后取消引用它并调用Load它.有什么可能的原因可以做到这一点,而不是简单地打电话myCurve.Load

c++ casting semantics

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

如何使用Alpha通道将图像绘制到TSpeedButton?

我有一个TSpeedButton,并且有一个TImageList包含各种字形.其中一个有一个alpha通道,当它被绘制到UI的某些部分时看起来非常好......但是当在a上绘制该字形时TSpeedButton,它不会使alpha通道生效.

查看相关代码TButtonGlyph.DrawButtonGlyph,它将被传递trueTransparent参数,但Transparentif FThemesEnabled代码路径中根本没有考虑; 它只在else部分引用.由于此程序启用了主题,这是否意味着无法将alpha混合图像绘制为TSpeedButton

有什么方法可以解决这个问题吗?

编辑:更仔细地看一下,它似乎需要考虑透明度......有点儿.完全透明的像素根本不会被绘制,这是正确的行为.但是边缘周围的抗锯齿(部分透明)被绘制为完全不透明.

delphi vcl alphablending delphi-xe4

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