小编Squ*_*ama的帖子

Haskell:将Int转换为String

我知道您可以将a转换String为数字read:

Prelude> read "3" :: Int
3
Prelude> read "3" :: Double 
3.0
Run Code Online (Sandbox Code Playgroud)

但是你如何抓住价值的String代表Int

string int haskell casting

189
推荐指数
3
解决办法
13万
查看次数

C#First()和Find()之间的区别

所以我知道这Find()只是一种List<T>方法,而First()对任何方法都是一种扩展IEnumerable<T>.我也知道,First()如果没有传递参数,将返回第一个元素,而Find()抛出异常.最后,我知道First()如果找不到元素会抛出异常,而Find()返回类型的默认值.

我希望能够解决我实际要问的问题.这是一个计算机科学问题,并在计算层面处理这些方法.我已经明白,IEnumerable<T>扩展并不总是像人们期望的那样运行.所以这是Q,我的意思是从"接近金属"的角度来看:Find()和之间的区别是什么First()

这里有一些代码可以为这个问题提供基本的假设.

var l = new List<int> { 1, 2, 3, 4, 5 };
var x = l.First(i => i == 3);
var y = l.Find(i => i == 3);
Run Code Online (Sandbox Code Playgroud)

在上面的代码中如何First()Find()发现它们的值之间是否有任何实际的计算差异?

注:让我们忽略的东西AsParallel()AsQueryable()现在.

c# linq list c#-4.0

52
推荐指数
4
解决办法
3万
查看次数

.NET Decimal的二进制表示

嘿所有,快速问题:.NET decimal类型如何在内存中以二进制形式表示?

我们都知道浮点数是如何存储的,因此存在不准确的原因,但decimal除了以下内容之外我找不到任何有关的信息:

  1. 显然比浮点数更准确
  2. 占用128位内存
  3. 2 ^ 96 +符号范围
  4. 28(有时29?)总数字的有效数字

有什么方法可以解决这个问题吗?我的计算机科学家要求答案,经过一个小时的尝试研究,我找不到它.似乎有很多浪费的东西,或者我只是在脑海中想象这个错误.有人可以对此有所了解吗?谢谢.

.net binary decimal representation

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

界面强制转换与类强制转换

我被引导相信在某些情况下,铸造可能成为可衡量的性能障碍.当我们开始处理令人讨厌的异常投掷\捕获的不连贯网络时,情况可能会更多.

鉴于我希望在编程时创建更正确的启发式方法,我已经被提示向.NET专家提出这个问题:接口是否比类型转换更快?

为了给出一个代码示例,让我们说这存在:

public interface IEntity { IParent DaddyMommy { get; } }
public interface IParent : IEntity { }
public class Parent : Entity, IParent { }
public class Entity : IEntity
{
    public IParent DaddyMommy { get; protected set; }
    public IParent AdamEve_Interfaces
    {
        get
        {
            IEntity e = this;
            while (e.DaddyMommy != null)
                e = e.DaddyMommy as IEntity;
            return e as IParent;
        }   
    }
    public Parent AdamEve_Classes
    {
        get
        {
            Entity e = this;
            while (e.DaddyMommy != …
Run Code Online (Sandbox Code Playgroud)

.net c# casting interface

17
推荐指数
4
解决办法
6178
查看次数

C++ - LNK2019错误未解析的函数_main中引用的外部符号[模板类的构造函数和析构函数]

[[UPDATE]] - >如果我在program.cpp中#include"Queue.cpp",它就可以了.这不应该是必要的,对吗?

嘿所有 - 我正在使用Visual Studio 2010并且无法链接快速和脏的Queue实现.我从一个空的 Win32控制台应用程序开始,所有文件都存在于项目中.对于详细程度,这里是复制我的错误的完整代码.我意识到一些代码实际上可能是错误的.我还没有机会测试它,因为我还没有能够链接它.

Queue.hpp

#ifndef ERROR_CODE
#define ERROR_CODE
enum Error_Code
{
    Success,
    Underflow,
    Overflow
};
#endif // ERROR_CODE

#ifndef QUEUE
#define QUEUE
template<class T>
struct Queue_Node
{
    T data;
    Queue_Node *next;

    Queue_Node()
    {
        next = NULL;
    }
    Queue_Node(T pData)
    {
        data = pData;
        next = NULL;
    }
    Queue_Node(T pData, Queue_Node *pNext)
    {
        data = pData;
        next = pNext;
    }
};

template<class T>
class Queue
{
public:
    Queue();
    Error_Code Serve();
    Error_Code Append(T item);
    T …
Run Code Online (Sandbox Code Playgroud)

c++ queue linker templates linker-errors

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

我们称之为(新的?)高阶函数?

我试图说出我认为对于更高阶函数的新想法.重要的是,这里是Python和Haskell中的代码来演示这个概念,后面将对此进行解释.

蟒蛇:

>>> def pleat(f, l):
       return map(lambda t: f(*t), zip(l, l[1:]))
>>> pleat(operator.add, [0, 1, 2, 3])
[1, 3, 5]
Run Code Online (Sandbox Code Playgroud)

哈斯克尔:

Prelude> let pleatWith f xs = zipWith f xs (drop 1 xs)
Prelude> pleatWith (+) [0,1,2,3]
[1,3,5]
Run Code Online (Sandbox Code Playgroud)

正如您所能推断的那样,序列正在迭代,利用相邻元素作为传递函数的参数,将结果投影到新序列中.那么,有没有人看到我们创建的功能?这对功能社区的人来说是否熟悉?如果没有,我们怎么命名呢?

---- Update ----
Run Code Online (Sandbox Code Playgroud)

褶皱获胜!

Prelude> let pleat xs = zip xs (drop 1 xs)
Prelude> pleat [1..4]
[(1,2),(2,3),(3,4)]

Prelude> let pleatWith f xs = zipWith f xs (drop 1 xs)
Prelude> pleatWith (+) [1..4]
[3,5,7]
Run Code Online (Sandbox Code Playgroud)

python theory haskell functional-programming higher-order-functions

10
推荐指数
5
解决办法
2191
查看次数

C#探测并捕获Javascript Alert()和Confirm()

所以我已经做了一段时间的研究,我已经走到了尽头.我正在做一些IE自动化.在C#/ .NET中,如何探测和使用javascript alert()或confirm()以便我可以执行诸如获取文本并单击OK\Cancel按钮之类的操作?

更新:

我需要重申一下:我需要能够从alert()或confirm()中提取并验证文本,并向其发送OK或Cancel click.这种测试的一个例子是确保当我点击删除时,确认()没有说"你确定你想去墨西哥吗?" 或除了正确信息之外的任何其他内容

为以防万一,让我重申:对于这个测试的目的,我已经为零了相关网站的源代码控制.

最后,我正在使用SHDocVw.InternetExplorer.

.net c# internet-explorer alert automation

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

更新列表框的 DisplayMember

这个问题涉及一个很小的 ​​Winforms GUI。让大家知道,我具有数据绑定和 INotifyPropertyChanged 的​​基本知识,并在 WPF 的 ViewModel 中使用这两个知识。但我不了解Winform。这是学校作业。

所以我有一个具有属性的类DisplayName。我还有一个ListBoxItems是我的类实例的序列。我已经指出,myListBox.DisplayMember = "DisplayName";在更改类实例中的值后,这将导致属性DisplayName返回不同的值,如何告诉我再次ListBox拉取该DisplayName属性以刷新其值?

c# winforms

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

访问P/Invoke的Windows API常量和结构

快速提问:如何从.NET访问为Win32 API定义的BN_CLICKED常量和其他常量?它们是否在某些图书馆中定义?我必须自己定义吗?如果是这样,我在哪里可以找到这些值?Windows版本之间的值是否为特定于版本的值?

.net c# winapi

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

Haskell~最后迭代整个列表吗?

Haskellites的简单问题:Haskell是否迭代整个序列以获得最后一个值?具体来说,是否为这两个表达式执行了不同数量的指令?

Prelude> last "asdf"
'f'
Prelude> last "qwerty"
'y'
Run Code Online (Sandbox Code Playgroud)

haskell list

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

将属性作为参数传递

我想为LoadFromXML加载和验证创建一个通用的辅助方法.如果我加载的XML不完整,我确实希望它在没有抛出异常的情况下完全失败.目前,我的代码看起来像这样(或多或少)

public override bool Load(XElement source)
{
    return new List<Func<XElement, bool>>
    {
        i => this.LoadHelper(i.Element(User.XML_Username), ref this._username, User.Failure_Username),
        i => this.LoadHelper(i.Element(User.XML_Password), ref this._password, User.Failure_Password)
        //there are many more invokations of LoadHelper to justify this architecture
    }
    .AsParallel()
    .All(i => i.Invoke(source));
}

private bool LoadHelper(XElement k, ref string index, string failure)
{
    if (k != null && k.Value != failure)
    {
        index = k.Value;
        return true;
    }
    return false;
}
Run Code Online (Sandbox Code Playgroud)

this._username是属性使用的私有成员变量this.Username.这是我对这个问题的当前解决方案,但我面临一个主要问题:因为我无法将属性本身传递给LoadHelper并且Action<string>与属性不匹配:(,我现在正在规避属性设置器逻辑.

对于你自己的思考,在LoadHelper抽象之前,我 …

c# parallel-processing parameters lambda properties

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

如何从Python 2.7中触摸Windows中的COM

在Python 2.4中,我可以做...

from win32com.client import Dispatch
Run Code Online (Sandbox Code Playgroud)

显然,Python 2.7中不存在win32com.它刚重命名了吗?我需要安装另一个模块吗?

python com

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