问题列表 - 第10151页

我应该如何实现Object.GetHashCode()以实现复杂的相等?

基本上,到目前为止我有以下内容:

class Foo {
    public override bool Equals(object obj)
    {
        Foo d = obj as Foo ;
        if (d == null)
            return false;

        return this.Equals(d);
    }

    #region IEquatable<Foo> Members

    public bool Equals(Foo other)
    {
        if (this.Guid != String.Empty && this.Guid == other.Guid)
            return true;
        else if (this.Guid != String.Empty || other.Guid != String.Empty)
            return false;

        if (this.Title == other.Title &&
            this.PublishDate == other.PublishDate &&
            this.Description == other.Description)
            return true;

        return false;
    }
}
Run Code Online (Sandbox Code Playgroud)

所以,问题是:我有一个非必需字段Guid,这是一个唯一标识符.如果没有设置,那么我需要尝试根据不太准确的度量确定相等性,以尝试确定两个对象是否相等.这很好用,但它会弄得GetHashCode()一团糟......我应该怎么做呢?一个天真的实现将是这样的:

public override …
Run Code Online (Sandbox Code Playgroud)

c# equals iequatable gethashcode

7
推荐指数
2
解决办法
4473
查看次数

递归URL模式CMS样式

每当我学习一门新语言/框架时,我总会建立一个内容管理系统......

我正在学习Python和Django,我一直在制作一个能够选择正确页面的URL模式.

例如,对于单级URL模式,我有:

url(r'^(?P<segment>[-\w]+)/$', views.page_by_slug, name='pg_slug'),
Run Code Online (Sandbox Code Playgroud)

哪个适合网址,如:

http://localhost:8000/page/
Run Code Online (Sandbox Code Playgroud)

现在,我不确定是否可以让Django的URL系统返回一个slu a ala列表:

http://localhost:8000/parent/child/grandchild/
Run Code Online (Sandbox Code Playgroud)

将返回父母,孩子,孙子.

这就是Django已经做过的事情了吗?或者我是否修改原始URL模式以允许斜杠并在那里提取URL数据?

我在这里先向您的帮助表示感谢.

django django-urls

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

如何将VBA函数调用到子过程中

我知道对于那里的人来说这是一个简单的问题,但我从来没有真正使用过功能模块,因为我不明白它们是什么.

所以我有很多东西可以使用它(减少冗余),但我想知道如何从表单调用sub(如按钮单击)过程.

我试过这个......

Sub Command_Click()
    Call "pptCreator"
End Sub
Run Code Online (Sandbox Code Playgroud)

我知道这很糟糕,但我不知道如何将其纳入程序.

ms-access vba office-2003 function access-vba

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

UIToolbar中的持久UIBarButtonItem?

我一直在开发一个使用UIToolbar的iPhone应用程序(在UINavigationController的上下文中),在屏幕底部显示一个小状态图标.工具栏最终还会有与之关联的动作图标(想想邮件应用程序).

我遇到了一个问题,即每个推到导航控制器堆栈上的UIViewController都应该有自己的一组项目供工具栏显示,结果,"状态"项目淡出并重新进入每个视图转换.

有没有办法在工具栏中有一个持久性项目?我也尝试在导航控制器的初始化程序中添加项目(我为此方法划分了UINavigationController),但它仍然没有.

iphone cocoa objective-c uikit

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

编程珍珠中的qsort函数出错?

编程珍珠只是我或者这个代码是错误的(quicksort想要2个const空洞,不是吗?)如果是这样,我的解决方案是对的吗?道歉,只是学习......

int wordncmp(char *p, char* q)
{   int n = k;
    for ( ; *p == *q; p++, q++)
        if (*p == 0 && --n == 0)
            return 0;
    return *p - *q;
}

int sortcmp(char **p, char **q)
{   return wordncmp(*p, *q);
}
...

qsort(word, nword, sizeof(word[0]), sortcmp);
Run Code Online (Sandbox Code Playgroud)

这是一个解决方案吗?

int sortcmp(const void *p, const void *q)
{   return wordncmp(* (char * const *) p, * (char * const *) q);
}
Run Code Online (Sandbox Code Playgroud)

c std qsort programming-pearls

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

什么时候SqlCommand.ExecuteReader()会返回null?

当使用调用SqlCommand.ExecuteReader()方法时,ReSharper告诉我,当我之后使用SqlDataReader对象时,我有一个可能的NullReference异常.

所以使用以下代码:

using (SqlConnection connection = GetConnection())
{
    using (SqlCommand cmd = connection.CreateCommand())
    {
        cmd.CommandText = ; //snip

        using (SqlDataReader reader = cmd.ExecuteReader())
        {
            while (reader.Read())
            {
                //snip
            }
        }
    }
}
Run Code Online (Sandbox Code Playgroud)

while (reader.Read())行加下划线.

我的问题是读者对象何时会为空?我从来没有遇到它,文档没有提到它可能.我应该检查它是否为空或是否可以安全忽略?

为什么ReSharper认为它可能为null,例如它让我使用SqlCommand而不建议检查null?我猜是ExecuteReader方法有一个属性.

.net resharper sqlcommand nullreferenceexception

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

指向一些好的SVM教程

我一直在努力掌握支持向量机的基础知识,并下载和阅读了许多在线文章.但仍然无法掌握它.

我想知道,如果有的话

  • 很好的教程
  • 示例代码,可用于理解

或者你可以想到的东西,这将使我能够轻松学习SVM基础知识.

PS:我以某种方式设法学习PCA(主成分分析).顺便说一句,你们猜想我正在研究机器学习.

algorithm machine-learning svm libsvm

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

将显示/隐藏功能修改为仅缩放宽度,而不是高度?

正如标题所暗示的那样,我正在使用jQuery的show和hide函数来隐藏和显示元素.但是,我不想缩放元素的高度,只是宽度.

我正在考虑使用动画功能,但我不确定这是否是最好的方法.

另外,我不想在javascript中设置高度,因为它可能会在标记中发生变化.

理想情况下,我想要发生的是当调用函数隐藏元素时,对象的宽度从它的原始宽度变为0并且它的alpha降为0然后当我告诉它显示时反向会发生.

css jquery events animation function

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

SVN:我可以将文件的子集复制到新标签吗?

在我的repo trunk中,我有一个目录unit-tests,我想要保留我的发布标记.我一直在做的是将trunk复制到新标签,然后删除unit-tests.这样好吗这感觉不对,因为标记每个版本需要两次修改.有没有办法从svn副本中排除目录?

我有:

/trunk/unit-tests
/trunk/dir1
/trunk/file1
/trunk/file2
Run Code Online (Sandbox Code Playgroud)

我想创造:

/tags/release_123/dir1
/tags/release_123/file1
/tags/release_123/file2
Run Code Online (Sandbox Code Playgroud)

我通常使用Tortoise/Eclipse客户端,但如果需要我可以使用它.

svn tags version-control tagging copy

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

使用带有"new {..}"LINQ查询的CopyToDataTable的异常

从这段代码我可以像我预期的那样调用bmwCars.CopyToDataTable().

var bmwCars = from car in dataTable.AsEnumerable()
                          where car.Field<string>("Make").ToLower().Equals("bmw")
                          select car;
Run Code Online (Sandbox Code Playgroud)

但是当我将一些代码声明更改为下面时,我无法调用CopyToDataTable(),为什么?

var bmwCars = from car in dataTable.AsEnumerable()
                          where car.Field<string>("Make").ToLower().Equals("bmw")
                          select new
                          {
                              Make = car.Field<string>("Make"),
                              Color = car.Field<string>("Color"),
                              PetName = car.Field<string>("PetName")
                          };
Run Code Online (Sandbox Code Playgroud)

c# linq datatable

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