问题列表 - 第8778页

使用DynamicInvoke直接调用委托和使用DynamicInvokeImpl有什么区别?

DynamicInvoke和DynamicInvokeImpl的文档都说:

动态调用(后期绑定)当前委托表示的方法.

我注意到DynamicInvoke和DynamicInvokeImpl采用了一个对象数组而不是一个特定的参数列表(这是我猜的后期绑定部分).但这是唯一的区别吗?DynamicInvoke和DynamicInvokeImpl之间有什么区别.

c# delegates

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

Scala:两种方法,不同的参数类型但相同的代码:如何统一?

我有以下课程:

case class Vec2(x: Int, y: Int) { def +(other: Vec2) = Vec2(x + other.x, y + other.y) }
case class Vec3(x: Int, y: Int, z: Int) { def +(other: Vec3) = Vec3(x + other.x, y + other.y, z + other.z) }
Run Code Online (Sandbox Code Playgroud)

以下方法:

def doStuff1(a: Vec2, b: Vec2) = (a, a + b)
def doStuff2(b: Vec3, b: Vec3) = (a, a + b)
Run Code Online (Sandbox Code Playgroud)

我的问题:如何以类型安全的方式将这两个函数合并为一个通用函数?可以以任何方式改变课程.

就像是

def doStuff[V](a: V, b: V) = (a, a + b)
Run Code Online (Sandbox Code Playgroud)

显然不会起作用,因为调用了"+"方法.我尝试了各种疯狂的东西(带有抽象类型的公共基类,显式类型的自引用,差异,......)但是无法提出解决方案.

我能想出的最好的想法是运行时检查(模式匹配或isInstanceOf/asInstanceOf),但这不符合类型安全要求.我只是想/希望必须有更好的方法来做到这一点.

scala

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

如何以编程方式缓慢移动窗口,就好像用户正在这样做?

我知道MoveWindow()和SetWindowPos()函数.我知道如何正确使用它们.但是,我想要完成的是缓慢平滑地移动窗口,就好像用户正在拖动窗口一样.

我还没有让它正常工作.我尝试的是使用GetWindowRect()获取当前坐标,然后使用setwindow和movewindow函数,每次调用右递增10个像素.

有任何想法吗?

这是我所有定义旁边的内容.

while(1)
{
     GetWindowRect(notepad,&window);

     Sleep(1000);
     SetWindowPos(
        notepad,
        HWND_TOPMOST,
        window.top - 10,
        window.right,
        400,
        400,
        TRUE
        );
}
Run Code Online (Sandbox Code Playgroud)

c c++ winapi

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

纯功能语言中的高效堆

作为Haskell的一个练习,我正在尝试实现heapsort.堆通常在命令式语言中实现为数组,但在纯函数式语言中这将是非常低效的.所以我看了二进制堆,但到目前为止我发现的所有内容都是从命令性的角度描述的,所提出的算法很难转化为功能设置.如何在Haskell等纯函数式语言中有效地实现堆?

编辑:通过有效我的意思是它应该仍然在O(n*log n),但它不必击败C程序.另外,我想使用纯函数式编程.在Haskell中做这件事还有什么意义呢?

haskell functional-programming binary-heap heapsort purely-functional

35
推荐指数
4
解决办法
9687
查看次数

SQL Server数据库保护聪明的管理员?

我希望保护存储在一个表中的事件,该表与其他表有关系.事件通过Windows服务插入,即连接硬件和从硬件读取.

在事件表中有PK,日期和时间以及3个不同的值.

问题是每个管理员都可以登录并插入/更新/删除此表中的数据,例如使用sql management studio.我创建触发器以防止更新和删除,因此如果管理员不知道触发器,他就无法更改数据,但如果他知道触发器,他可以轻松地禁用触发器并执行他想要的任何操作.

所以经过长时间的思考我有一个想法,在表中添加新的列(字段)并在此字段中存储类似校验和的内容,将根据其他值计算此校验和.此校验和将在插入/更新语句中生成.如果有人手动插入/更新某些东西,我会知道它,因为如果我用校验和检查数据,就会出现不匹配.

我的问题是,如果你有类似的问题,你如何解决它?校验和使用什么算法?如何保护免受删除声明(我知道PK中的空数,但这还不够)?

我正在使用SQL Server 2005.

sql database security

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

如何获取ASP.NET应用程序的完整虚拟路径

我如何知道我的应用程序当前托管的完整虚拟路径?例如:

http://www.mysite.com/myApp
Run Code Online (Sandbox Code Playgroud)

要么

http://www.mysite.com/myApp/mySubApp
Run Code Online (Sandbox Code Playgroud)

我知道HttpRequest的应用程序路径,但它只返回我的应用程序当前托管的文件夹名称,但是如何获取初始部分?

asp.net virtual path

33
推荐指数
4
解决办法
8万
查看次数

你如何使语言绑定?

虽然我或多或少地了解语言绑定是什么,但我很难理解它们是如何工作的.例如,有人可以解释如何为WinAPI创建Java绑定?

binding

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

表达到评论或行尾

虽然这个问题类似于这个主题

我想在使用正则表达式构造代码时可能会出错.

我希望将一行中的任何内容与注释("#")或行尾(如果它没有注释)匹配.

我正在使用的正则表达式是: (.*)(#|$)

(.*)= Everything
(#|$)=评论或行尾

代码:

OPTION = re.compile(r'(?P<value>.*)(#|$)')
file = open('file.txt')
lines = file.read()
for line in lines.split('\n'):
    get_match = OPTION.match(line)
    if get_match:
        line_value = get_match.group('value')
        print "Match=  %s" % line_value
Run Code Online (Sandbox Code Playgroud)

以上工作但不删除评论.如果文件有一行如下:

this is a line   # and this is a comment
Run Code Online (Sandbox Code Playgroud)

运行代码时我仍然得到整行.

我是否在正则表达式中缺少其他值/信息,或者我是否需要对代码进行更改?

python regex

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

firefox中的asp.net重定向无法正常工作

在我的.net 3.5 web应用程序中,我使用response.redirect将用户重定向到另一个页面.

这适用于所有浏览器,但不适用于Firefox浏览器.我不知道为什么?

Response.Redirect("~/"+ GlobalConsts.ARTICLE_ANALYSER_URL +"?"+ GlobalConsts.QUERYSTRING_KEY_ONE + 
            SessionHandler.RedirectToArticleID + GlobalConsts.QUERYSTRING_KEY_TWO + 
            SessionHandler.RedirectToArticleParentOrChild);
Run Code Online (Sandbox Code Playgroud)

asp.net firefox response.redirect

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

如何使用正则表达式解析角度值

我使用正则表达式的经验很少,我需要使用正则表达式解析表示为方位的角度值,例如:

"N45°20'15.3" E"

代表:45度,20分钟,15.3秒,位于NE象限.

限制是:

  • 第一个字符可以是"N"或"S"
  • 最后一个字符可以是"E"或"W"
  • 0 <=度<= 59
  • 0 <=分钟<= 59
  • 0 <=秒<60,这可以省略.

Python最好或任何其他语言.

谢谢

python regex angle

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