小编Use*_*ser的帖子

C#:从字典中删除重复值?

如何从可能具有重复值的字典中创建没有重复值的字典?

IDictionary<string, string> myDict = new Dictionary<string, string>();

myDict.Add("1", "blue");
myDict.Add("2", "blue");
myDict.Add("3", "red");
myDict.Add("4", "green");


uniqueValueDict = myDict.???
Run Code Online (Sandbox Code Playgroud)

编辑:

- 我不在乎保留哪个键. - 是否有使用Distinct()操作的东西?

c# linq dictionary .net-3.5

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

Django:国家下拉列表?

我有一份地址信息表.其中一个字段是地址国家/地区.目前这只是一个文本框.我想要一个下拉列表(ISO 3166国家).我是一个django新手,所以我还没有使用过Django Select小部件.有什么好办法呢?

在某个地方对文件中的选项进行硬编码?把它们放在数据库中?在模板中?

django country django-forms django-widget drop-down-menu

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

以编程方式退出MFC应用程序的正确方法是什么?

使用Windows MFC C++.我有一个第三方应用程序,它在我的CWinApp派生类中调用用户定义的方法.在InitInstance()之后调用此方法.如果此方法中存在错误,则抛出异常并捕获到try/catch块中,我想从catch块退出应用程序.什么是规范和正确的退出方式?

更新:

Serge我认为是正确的,在InitInstance()中返回false是退出应用程序的正确方法.但是,现在假设我想从CDialog派生类的OnInitDialog()处理程序退出,这是正确的方法.

更新2

对我来说,我发现调用PostMessage(WM_CLOSE)是我的非模态CDialog派生类的最佳方法.我试过的所有其他戒烟方法都会在某些情况下引发一些例外情况.

这是我如何使用它的一个例子:

BOOL SomeDialog::OnInitDialog()
{
    CDialog::OnInitDialog();

    ::OleInitialize(nullptr);

    try
    {
        // ...load settings file here
    }
    catch(...)
    {
        PostMessage(WM_CLOSE);
        return TRUE;
    }

    // return TRUE  unless you set the focus to a control
    return TRUE;
}
Run Code Online (Sandbox Code Playgroud)

c++ mfc exit quit

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

Canonical HTTP POST代码?

我已经看到了很多发送http帖子的实现,并且我承认我并不完全理解底层细节以了解所需要的内容.

在C#.NET 3.5中发送HTTP POST的简洁/正确/规范代码是什么?

我想要一个通用的方法

public string SendPost(string url, string data)
Run Code Online (Sandbox Code Playgroud)

可以添加到库中并始终用于发布数据,并将返回服务器响应.

c# post http .net-3.5

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

如何在R中对data.frame进行排序和过滤?

我理解如何对数据框进行排序:

df[order(df$Height),]

我理解如何过滤(或子集)匹配某个谓词的数据帧:

df[df$Weight > 120,]

但是我如何排序过滤(例如,按高度排序并按重量过滤)?

sorting r subset dataframe

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

单元测试:接口编码?

目前我的项目由各种具体课程组成.现在,当我进入单元测试时,看起来我应该为每个类创建一个接口(有效地将项目中的类数量加倍)?我碰巧使用Google Mock作为模拟框架.请参阅接口上的Google Mock CookBook.虽然之前我可能刚刚类CarEngine,现在我将有抽象类(又称C++接口)CarEngine然后实现类CarImplementationEngineImpl或什么的.这将使我能够Car依赖它Engine.

我在研究这个问题时遇到了两条思路:

  1. 仅当您可能需要对给定抽象的多个实现和/或在公共API中使用时才使用接口,否则不要不必要地创建接口.

  2. 单元测试存根/模拟通常 "其他实现",因此,是的,您应该创建接口.

在单元测试时,我应该为项目中的每个类创建一个接口吗?(我倾向于创建易于测试的界面)

c++ unit-testing interface concrete googlemock

14
推荐指数
2
解决办法
3459
查看次数

bitbucket:fork vs clone?

使用Mercurial与bitbucket托管的私有存储库.我需要为应用程序添加一些新功能,这些功能可能最终会成为严重的变化.我一直在讨论创建命名分支或克隆存储库之间的争论.我认为克隆对我的情况更有意义,因为它几乎是一个新项目,将从当前的大量借用.

所以我的计划是在bitbucket上创建一个全新的存储库,并将我的本地存储库推送到这个新的存储库.

现在我继续使用bitbucket,我注意到了一个fork功能.这似乎克隆了存储库服务器端,但也记住了它所分叉的原始存储库,并提供了显示它们之间差异的工具.

这有什么优点/缺点?我应该只使用叉子还是有任何捕获?

mercurial fork clone bitbucket

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

C#:存储百分比,50还是0.50?

当在变量中保持百分比值时,将它们保持为整数与分数之间存在偏好.那个变量应该保持0到100之间或0.00到1.00之间的数字吗?在任何一种情况下,保存值的变量都是十进制类型.

我正在与之交互的数据库恰好将它们存储为0到100的整数.

注意:我使用"整数"这个词来表示0到100范围内的值,尽管这些值可能包含小数分量(例如,25.75).我不知道如何描述两个百分比值范围之间的差异

c# types decimal

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

Visual C++ 2010 Express:如何使用Qt?

我对让Qt使用Visual Studio Express感到困惑.大多数在线搜索都出现了使用以下指令编译Qt的说明:

  • 安装MSVC2005或MSVC2008
  • 安装最新的Platform SDK(@ MSDN:"适用于Windows Server 2003 R2的Platform SDK")
  • 从Platform SDK,您至少需要安装base + internet选项
  • 然后,下载并将最近的快照或预览版本解压缩到D:\ Qt\4.xx
  • 打开加载了MSVC设置的控制台(请参阅MSVC工具菜单)并转到Qt目录
  • 键入"configure -platform win32-msvc2005",不带引号
  • 这将构建您需要的项目文件
  • 在那之后,它就像运行"nmake"和喝大量咖啡一样简单

然后,将D:\ Qt\4.xx\bin和D:\ Qt\4.xx\lib添加到路径环境变量中,您将能够在系统的任何位置使用此版本的Qt.后者可以添加到MSVC选项中的库部分.

(来自http://www.qtcentre.org/threads/11710-Visual-Studio-2005-Express)

但是,当我访问Qt(http://qt.nokia.com/downloads)的下载页面时,Visual Studio的下载标记为:"Qt libraries 4.7.1 for Windows(VS 2008,228 MB)"

我很困惑,我真的还需要建立吗?或者它已经建成了吗?

c++ qt qt4 visual-studio-express visual-c++-2010

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

如何在页眉/页脚中使用日期模式?

这是我的app.config中的appender配置.这只是打印出文字字符串而不是将其翻译成日期(即,字面上打印"[START:%date {MM/dd/yy HH:mm}]").

<appender name="RollingLogFileAppender"
          type="log4net.Appender.RollingFileAppender">
  <file value="C:\somelog" />
  <appendToFile value="true" />
  <rollingStyle value="Date" />
  <datePattern value="-yyyy-MM-dd'.txt'" />
  <layout type="log4net.Layout.PatternLayout">
    <header value="[START:  %date{MM/dd/yy HH:mm} ]&#13;&#10;" />
    <conversionPattern value="%date{yyyy-MM-dd HH:mm:ss} - %message" />
    <footer value="[END]&#13;&#10;&#13;&#10;" />
  </layout>
</appender>
Run Code Online (Sandbox Code Playgroud)

如何在标题中打印日期/时间?

log4net log4net-configuration

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