问题列表 - 第18535页

obj.nil?与obj == nil

是否更好使用obj.nil?obj == nil两者的好处是什么?

ruby comparison null

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

是否有一种惯用的方法来为Ruby中的可选参数指定默认值?

是否有更简洁和惯用的方法来编写以下代码,用于指定方法的可选参数(在params/options哈希中)的默认值?

def initialize(params={})
  if params.has_key? :verbose
    @verbose = params[:verbose]
  else
    @verbose = true # this is the  default value
  end
end
Run Code Online (Sandbox Code Playgroud)

我想将它简化为这样的东西:

def initialize(params={})
  @verbose = params[:verbose] or true
end
Run Code Online (Sandbox Code Playgroud)

几乎工作,除非你真的需要使用has_key? :verbose为条件,而不是仅仅评估params[:verbose]时,要指定的值,以覆盖情况下"假"(即,如果你想通过:verbose => false如本例中的参数) .

我意识到在这个简单的例子中我可以很容易地做到:

def initialize(verbose=false)
  @verbose = verbose
end
Run Code Online (Sandbox Code Playgroud)

但是,在我的实际代码中,我实际上有一堆可选参数(除了一些必需的参数),我想把可选的参数放在params散列中,这样我就可以很容易地指定(按名称)少数几个我想要的,而不是必须按顺序列出它们(并且可能必须列出我实际上并不想要的那些).

ruby idioms

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

MySQL与PHP中的MySQLi

每个有什么区别/优点?缺点是什么?

我不是在寻找编码偏好或主观答案.

有什么实际差异?(存储,实现,代码外观,环境要求......)

php mysql mysqli

4
推荐指数
2
解决办法
6613
查看次数

将文本图像分离为组件字符图像

我想将文本图像分成它的组成字符,也作为图像.例如,使用下面的示例,我最终会得到14张图像.

我只会在一行上使用文字,所以y高度并不重要 - 我需要找到的是每个字母的开头和结尾以及裁剪到那些坐标.这样我也可以避免'i','j'等问题.

我是图像处理的新手,我不知道如何去做.某种形式的边缘检测?有没有办法确定纯色的连续区域?任何帮助都很棒.

试图提高我的Python技能和熟悉一些可用的库,所以我使用的是Python Imaging Library(PIL),但我也看过OpenCV.


示例图片:

这是一些文字

python image-processing python-imaging-library

5
推荐指数
2
解决办法
8854
查看次数

需要帮助破译Projectile Motion的公式

我需要实现一点AI来弄清楚如何用射弹运动击中目标.

我在维基百科发现了这个:

点击坐标所需的角度

这看起来就像我需要的东西,特别是因为我有一个额外的问题从零高度发射射弹.但是,我的数学技能并不是很好,所以对我来说这一切看起来都是完全无稽之谈,我不知道如何将其中任何一个转换为代码.

如果有人可以把它分解成我能用基本操作符(+ - *%)和函数(sin,cos,sqrt等)理解的东西,我真的很感激.

physics artificial-intelligence game-physics

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

不会让我在Ruby提示符下安装Gem

Windows Vista,Ruby v.3.3.5

C:\>gem install rmagick

Building native extensions.  This could take a while...

ERROR:  Error installing rmagick:
        ERROR: Failed to build gem native extension.

C:/Ruby19/bin/ruby.exe extconf.rb
checking for Ruby version >= 1.8.5... yes
Invalid drive specification.
Unable to get ImageMagick version
*** extconf.rb failed ***
Could not create Makefile due to some reason, probably lack of
necessary libraries and/or headers.  Check the mkmf.log file for more
details.  You may need configuration options.

Provided configuration options:
        --with-opt-dir
        --without-opt-dir
        --with-opt-include
        --without-opt-include=${opt-dir}/include …
Run Code Online (Sandbox Code Playgroud)

ruby windows gem install windows-vista

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

根据WPF中的模板在运行时创建具有不同内容的TabItem

我正在使用WPF编写应用程序,其中一部分涉及为用户管理各种文件,这些文件用于配置自定义的内部设备.我需要能够在同一个TabControl中的选项卡中操作不同类型的配置,这意味着必须动态生成TabItems的内容.我想用ControlTemplates做到这一点,但我还没有成功获得一个工作模板.我在我的Window资源中定义了一个名为"pendantConfigurationTabItemTemplate"的ControlTemplate,我使用以下代码将模板(包含我需要访问的命名项)应用到TabItems并将它们添加到它们的父TabControl:

<ControlTemplate x:Key="pendantConfigurationTabItemTemplate" TargetType="TabItem">
    <StackPanel Orientation="Vertical">
        <my:PendantConfigurationFileEditor x:Name="configurationEditor"/>
        <StackPanel Style="{StaticResource defaultOkCancelButtonsContainerStyle}">
            <Button Style="{StaticResource defaultOkCancelButtonStyle}"/>
            <Button Style="{StaticResource defaultOkCancelButtonStyle}" Click="OkButton_Click"/>
        </StackPanel>
    </StackPanel>
</ControlTemplate>
Run Code Online (Sandbox Code Playgroud)

代码背后:

TabItem ConfigTab = new TabItem();

switch (ConfigFile.Device)
{
  case DeviceType.PENDANT:
{
  ControlTemplate TabTemplate = Resources["pendantConfigurationTabItemTemplate"] as ControlTemplate;

  ConfigTab.Template = TabTemplate;
  ConfigTab.ApplyTemplate();

  object Editor = TabTemplate.FindName("configurationEditor", ConfigTab);

  PendantConfigurationFileEditor ConfigFileEditor = Editor as PendantConfigurationFileEditor;

  ConfigFileEditor.PendantConfiguration = DeviceConfig;

  break;
}
default:
  /* snipped */
  return;
}

ConfigTab.Header = ConfigFile.ConfigurationName;

this.EditorTabs.Items.Add(ConfigTab);
this.EditorTabs.SelectedIndex = this.EditorTabs.Items.Count - 1;
Run Code Online (Sandbox Code Playgroud)

但是,每当我运行程序时,没有选项卡添加到选项卡控件,而是选项卡控件(看似)被模板内容替换或覆盖.有人可以帮我解决这个问题吗?

实际上,我想要做的是将WPF模板用作TabItem工厂

wpf tabcontrol controltemplate tabitem

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

Disqus会存储您的评论吗?

我今天偶然发现了Disqus,我想知道为什么我需要再次创建自己的评论/发布模型:).Disqus是否将评论存储在自己的数据库中,或者您是否也必须存储它们?这对性能有何影响?

是值得吗?

database disqus

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

>>>和>>运算符之间的区别

如果移位的数字是正数>>>和>>工作相同.

如果移位的数字是负的>>>用1s填充最高有效位,而>>操作移位用0填充MSB.

我的理解是否正确?

如果负数存储时MSB设置为1而不是Java使用的2s补码方式,那么运算符的行为会完全不同,对吗?

java bit-shift

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

堆栈是一个实现细节,或不?

根据http://msdn.microsoft.com/en-us/library/ms229017.aspx,值类型"在堆栈上分配或与其他结构*内联".然而在堆栈中是一个实现细节,Eric Lippert表示这是一个实现细节.

根据我的理解,实现细节是"代码产生的行为,可能通过使用代码来依赖,但代码写入的规范并未指定该行为." .我理解文档不是一个规范,但是如果文档中列出了我们可以依赖它的东西,它不再是一个细节.那么,堆栈是一个实现细节还是不是?

*:我理解这意味着结构也可以在其他结构内部而不是直接在堆上分配,尽管我可能是错的.

.net stack value-type

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