问题列表 - 第6011页

相当于其他语言中ruby方法名称的感叹号

在Ruby中,带有副作用的方法或改变作为参数传递的对象的方法都有"!" 作为后缀.

例如:

"SomeString".gsub!(/S/, "s")
将更改String对象,同时
"SomeString".gsub(/S/, "s")
将处理String对象的副本,并且不会更改方法之外的任何对象的状态.

我喜欢这个约定,我也想在用其他语言编程时使用它.

我的问题:

  • 真正的Ruby程序员(我不是一个;-))真的使用这个约定吗?如果没有,为什么不呢?
  • 在Java,PHP,Perl,Cobol ......中是否有等效的命名方法约定?

  • ruby naming-conventions

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

    如何创建一个可以使用或不使用参数的Python装饰器?

    我想创建一个可以与参数一起使用的Python装饰器:

    @redirect_output("somewhere.log")
    def foo():
        ....
    
    Run Code Online (Sandbox Code Playgroud)

    或没有它们(例如,默认情况下将输出重定向到stderr):

    @redirect_output
    def foo():
        ....
    
    Run Code Online (Sandbox Code Playgroud)

    那可能吗?

    请注意,我不是在寻找重定向输出问题的不同解决方案,它只是我想要实现的语法的一个示例.

    python decorator

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

    将PDF转换为PNG

    我正在尝试将PDF转换为PNG图像(至少是一个封面).我用pdftk成功地提取了PDF的第一页.我正在使用imagemagick进行转换:

    convert cover.pdf cover.png
    
    Run Code Online (Sandbox Code Playgroud)

    这很有效,但不幸的是,cover.png通过错误渲染(PDF中的某些alpha对象无法正确呈现).我知道ImageMagick使用GhostScript进行转换,如果我直接使用gs我可以得到所需的结果,但我宁愿使用转换库,因为它有其他我想要利用的工具.

    GhostScript中的此命令可完成所需的图像:

    gs -sDEVICE=pngalpha -sOutputFile=cover.png -r144 cover.pdf
    
    Run Code Online (Sandbox Code Playgroud)

    我想知道有没有办法通过转换为GhostScript传递参数,还是我坚持直接调用GhostScript?

    pdf png image imagemagick ghostscript

    76
    推荐指数
    5
    解决办法
    9万
    查看次数

    用于测试平台的verilog或systemc

    我被分配了验证一些基于verilog的RTL代码的任务.现在,使用verilog编写RTL测试平台似乎非常困难(对我来说).所以我想尝试下列之一. - 尝试为RTL提供PLI接口,从而调用'C函数进行测试 - 使用系统'C来连接'C函数

    PS:我已经有了一个广泛的'C代码,用于测试行为模型.我是硬件编程世界的新手.任何指针都将非常感激.

    hardware verilog register-transfer-level systemc

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

    如何使用正确的对象顺序编写MS SQL Server数据库脚本?

    我正在尝试将MS SQL Server 2005数据库编写为单个文件.到目前为止,我已尝试使用SQL Management Studio和MS数据库发布向导.

    这两个工具都会编写数据库对象的脚本而没有问题,尽管这两个工具都没有按正确的创建顺序编写脚本对象.例如,脚本可能会编写一个视图脚本,该视图需要一个在下一行之前不会创建的表.

    您是否知道如何使用正确的对象创建顺序编写数据库模式脚本?

    database sql-server schema sql-server-2005

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

    防病毒程序如何检测EICAR测试病毒?

    EICAR测试病毒用于测试反病毒程序的功能.为了将其检测为病毒,

    防病毒程序是否应具有测试病毒的病毒定义

    要么

    启发式检测将其检测为可疑模式并将其检测为病毒.

    (我已经看到AV程序在下载时删除文件但没有将病毒识别为EICAR测试病毒的情况.就像一个可疑对象 - >即如果它有定义它应该识别病毒名称,详细信息等Isn'是吗?)

    antivirus virus heuristics

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

    我的组件崩溃(TCustomEdit后代)

    我正在尝试创建像Delphi 2009的TButtonedEdit这样的组件.它是一个自定义的TEdit,左右两个按钮.

    在我的版本中,我使用2个TSpeedButton对象作为左右按钮.

    请看下面的简单代码.

    可以安装它,我可以在组件托盘中看到它.

    但是,由于某些未知原因,我无法保存我的申请.一旦我添加了组件,并开始更改属性或编写事件,Delphi将立即退出(崩溃?).

    我不知道什么是错的...但这是我的第一个组件,我肯定不对.

    你能找出问题吗?

    如果我使用这个组件,似乎Delphi 7.0在保存.dfm时遇到了问题.

    当我将这个组件添加到表单中时,保存它,Delphi将要求保存"Unit1.pas",然后立即退出.

    谢谢.

    unit MyButtonedEdit;
    
    interface
    
    uses
      Windows, Buttons, Classes, Controls, Forms, Graphics, Messages, StdCtrls;
    
    type
      TMyCustomButtonedEdit = class(TCustomEdit)
      private
         FLeftButton: TSpeedButton;
         FRightButton: TSpeedButton;
    
         procedure LeftButtonClick(Sender: TObject);
         procedure RightButtonClick(Sender: TObject);
    
         function  GetLeftGlyph: TBitmap;
         function  GetRightGlyph: TBitmap;
    
         procedure SetLeftGlyph(const g: TBitmap);
         procedure SetRightGlyph(const g: TBitmap);
    
      protected
         procedure CreateParams(var Params: TCreateParams); override;
         procedure DoLeftButtonClick; virtual; abstract;
         procedure DoRightButtonClick; virtual; abstract;
         function  GetEnabled: boolean; override;
         procedure SetEnabled(e: boolean); override;
         procedure WMSize(var Message: TWMSize); message …
    Run Code Online (Sandbox Code Playgroud)

    delphi debugging components

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

    如何在Python中分析多线程程序?

    我正在使用Python开发一个固有的多线程模块,我想知道它在哪里花费时间.cProfile似乎只是描述主线程.有没有办法分析计算中涉及的所有线程?

    python multithreading profiling

    60
    推荐指数
    3
    解决办法
    2万
    查看次数

    如何创建强制MS Word在webdav服务器上编辑文档的HTML链接

    假设我有支持WebDAV的服务器,我有很多Office文档.我想生成一个链接到文档的网页,点击该链接将打开Microsoft Word.Word将从WebDAV服务器下载文档,当用户完成编辑文档时,MS Word会将其上传回来.

    我知道MS Word(和其他Office程序)支持编辑存储在WebDAV服务器上的文档.我不知道的是,如何生成链接,这将触发MS Word自行下载此文档.

    可能吗?也许使用一些特殊的方案?

    document webdav ms-word hyperlink ms-office

    18
    推荐指数
    3
    解决办法
    2万
    查看次数

    如何在不使用.gitignore的情况下让Git忽略文件?

    由于外部奇怪的约束,我无法修改.gitignore我的存储库.有没有办法忽略文件​​和目录,而不是修改.gitignore?即使它是全局配置的全局解决方案,也将应用于我的所有存储库.

    git version-control

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