问题列表 - 第49076页

currying的实际优势是什么?

我看到很多关于currying技术的文档和问题,但是我发现很少有关于为什么会在实践中使用它的信息.我的问题是,currying有什么好处?也许你可以提供一个简单的例子,其中currying比传统的方法调用更可取.

太阳升起的时候我用C++工作,所以到目前为止,除了工作以外的语言修补外,我几乎没有接触过curry.

functional-programming currying

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

从标准小部件继承并在C#中设置我自己的默认值是一个好主意吗?

在Visual Studio(C#)中设计应用程序时,如果我知道我将拥有一定数量的DataGridViews,它们都具有相同的属性(如宽度,高度,颜色,其他一些属性,如:禁用直接编辑行的选项等)是否可以创建我自己的类("myDataGridView")继承DataGridView类并在那里进行所有调整,然后在代码中稍后实例化该类?像这样:

//my class:
class myDataGridView : DataGridView 
{
    this.BorderStyle = <someValue>
    this.ColumnCount = <someValue>
    //etc.

    public void method1() 
    {
    //some code...
    }
    public void method2() 
    {
    //some code...
    }
}

//instantiate it somewhere:
myDataGridView dgv1 = new myDataGridView();
myDataGridView dgv2 = new myDataGridView();
myDataGridView dgv3 = new myDataGridView();
Run Code Online (Sandbox Code Playgroud)

OO原则是否可以?我的朋友说把代码放进去了

this.BorderStyle = <someValue>
Run Code Online (Sandbox Code Playgroud)

在myDataGridView类中是不好的做法,因为如果你知道我的意思,调整像这样的属性会溢出dataGridView的属性,其他开发人员可能会在Visual Studio中直观调整.那有关系吗?我的意思是,如果我想将我的DataGridView视为一个对象,那么它可以具有其属性和行为,对吧?并且在我的类中使用调整DataGridView属性的代码是可以的,可读的,并且每个想要更改某些属性的开发人员都可以在myDataGridView类中更改它.这种做法是坏还是错?如果是,当您知道您的应用程序将具有许多具有相同属性/行为的DataGridView时,最佳做法是什么?谢谢.

c# oop datagridview subclass

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

如何知道IEnumerable <ValueType>是否为空,不计算全部?

如果不计算元素IEnumerables<T>集合中的所有struct元素,检测它是否为空的最佳方法是什么?

例如,在class我通常用first或default测试的元素上:

myEnumerableReferenceTypeElements.FirstOrDefault() == null
Run Code Online (Sandbox Code Playgroud)

因为null通常不是正在迭代的集合中的有效值.

但是,对于所有值必须在预定义范围内的值类型,默认值(例如int default 0)也是集合中的可行项.

myValueTypeInt32Elements.FirstOrDefault() == 0   // can't tell if empty for sure
Run Code Online (Sandbox Code Playgroud)

.net c# ienumerable

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

将字符串转换为smalldatetime

我有一个字符串排列的方式匹配格式yyyy-dd-MM HH:mm:ss它可能看起来像这样 2010-20-12 13:30:00

我需要将它插入SQL Server中的smalldatetime列.该列的格式为yyyy-MM-dd HH:mm:ss

我需要字符串看起来像这样2010-12-20 13:30:00,否则SQL Server会让月份和日期混淆.

谢谢你的想法

.net c# vb.net

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

事件构建前后发布以停止并重新启动Windows服务

我一直在尝试使用构建事件来启动和停止在我的项目中构建的Windows服务.然而,对于前置和后置构建失败,错误级别为255.我已经尝试使用预构建来捕获它而没有运气.

预建

if "$(ConfigurationName)" == "Debug"
(
 net stop myService
 if errorlevel 2 
    if errorlevel 255 
        :exit

   :exit
)
Run Code Online (Sandbox Code Playgroud)

生成后

if "$(ConfigurationName)" == "Release"
(
   copy $(TargetDir) C:\Media\Bin\$(ProjectName)
   if errorlevel 1 BuildEventFailed

   :BuildEventFailed
   mkdir C:\Media\Bin\$(ProjectName)

   copy $(TargetDir) C:\Media\Bin\$(ProjectName)
)
else if "$(ConfigurationName)" == "Debug"
(
   net start myService
)
Run Code Online (Sandbox Code Playgroud)

windows-services visual-studio-2010 pre-build-event

16
推荐指数
2
解决办法
9190
查看次数

在c#中格式化Int时如何强制使用符号

我想格式化一个整数i(-100 < i < 100),这样:

-99格式为"-99"
9格式为"+09"
-1格式为"-01"
0格式为"+00"

i.ToString("00")
Run Code Online (Sandbox Code Playgroud)

是接近但是当int为正时不添加+号.

有没有办法做到这一点,没有明确区分 i >= 0i < 0

c# tostring

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

无法使用带有PHPMailer的Google Apps帐户发送电子邮件

请注意,我使用的是谷歌应用帐户,而不是Gmail帐户.我正在尝试使用我的谷歌应用程序帐户使用PHP发送电子邮件.我可以使用端口587主机smtp.googlemail.com和启用SSL在.net应用程序中发送电子邮件.用户名是我的完整电子邮件地址.

require_once('PHPMailer_v5.1\class.phpmailer.php');

try {
    $mail  = new PHPMailer();
    $mail->Mailer   = 'smtp';
    $mail->SMTPSecure = 'tls';
    $mail->Host     = $host;
    $mail->Port     = 587;
    $mail->SMTPAuth = true;
    $mail->Username = $from;
    $mail->Password = $password;

    $mail->AddAddress($to, $to_name);   
    $mail->From       = $from;
    $mail->FromName   = $from_name;
    $mail->Subject    = $subject;
    $mail->MsgHTML($body);
    $mail->IsHTML(true);

    $mail->Send();
} catch (phpmailerException $e) {
    echo $e->errorMessage();
} catch (Exception $e) {
    echo $e->getMessage();
}
Run Code Online (Sandbox Code Playgroud)

无法让这个工作,但我尝试了几种不同的变化.

$mail->SMTPSecure = 'ssl'; 
$mail->Port     = 465;
// Error: Could not connect to SMTP host. This is expected as this isn't supported …
Run Code Online (Sandbox Code Playgroud)

php email gmail

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

为什么"不是ARRAY参考"错误?

我有这个脚本

#!/usr/bin/perl

use strict;
use warnings;

use yy;

my $data = [
    ["aax", "ert", "ddd"],
    ["asx", "eer", "kkk"],
    ["xkk", "fff", "lll"],
    ["xxj", "vtt", "lle"],
    ];

use Test::More tests => 4;

is(yy::type1_to_type2(\$data, 'aax'), 'ert');
is(yy::type1_to_type3(\$data, 'asx'), 'kkk');
is(yy::type2_to_type3(\$data, 'fff'), 'lll');
is(yy::type3_to_type1(\$data, 'lle'), 'xxj');
Run Code Online (Sandbox Code Playgroud)

它使用这个模块

package yy;

sub typeX_to_typeY {
    my ($x, $y, $data, $str) = @_;

    foreach (@$data) {
    if ($_->[$x - 1] eq $str) {
        return $_->[$y - 1];
    }
    }

    return;
}

sub type1_to_type2 { typeX_to_typeY(1, 2, @_) } …
Run Code Online (Sandbox Code Playgroud)

arrays perl

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

在Java中将String转换为Calendar对象

我是Java新手,通常使用PHP.

我想转换这个字符串:

2011年3月14日星期四16:02:37 GMT

进入一个Calendar对象,这样我就可以像这样轻松地拉出Year和Month:

String yearAndMonth = cal.get(Calendar.YEAR)+cal.get(Calendar.MONTH);
Run Code Online (Sandbox Code Playgroud)

手动解析是不是一个坏主意?使用子字符串方法?

任何建议都会有所帮助!

java datetime calendar date simpledateformat

163
推荐指数
6
解决办法
30万
查看次数

Magento集合中的addAttributeToFilter和OR条件

我想根据不同属性的几个标准选择产品.

我知道如何使用 $collection->addAttributeToFilter('someattribute', array('like' => '%'));

但是我想对OR条件使用几个属性.

喜欢:

$collection->addAttributeToFilter('someattribute', array('like' => 'value'));`
Run Code Online (Sandbox Code Playgroud)

要么

$collection->addAttributeToFilter('otherattribute', array('like' => 'value'));`
Run Code Online (Sandbox Code Playgroud)

获得"某些属性" "分配"设置为"价值"的产品

可能吗?

php collections attributes magento

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