问题列表 - 第37227页

如何获得真正的随机数?

可能的重复:
理解"随机性"
C#中真正的随机数生成器的最快实现

你好.功能:

Random rand = new Random();
rand.Next()
Run Code Online (Sandbox Code Playgroud)

它以秒为单位给出基于时间的伪随机数.如何获得真正随机的数字?我的意思是完全随机,不是基于系统时间和一些算法.就像,当你丢弃一个立方体时,你得到了真正的随机数,而不是基于时间和任何算法.

您如何看待使用麦克风的短样本或鼠标位置变化之间的时间?

random algorithm

4
推荐指数
5
解决办法
1683
查看次数

无法在VB6中实现一个类

我正在尝试在VB6中实现一个接口.我已经定义了Cast_Speed这样的类......

Public Function Run_Time() As Long

End Function
Run Code Online (Sandbox Code Playgroud)

和这样的实现......

Option Explicit
Implements Cast_Speed

Public Function Cast_Speed_Run_Time() As Long
    Cast_Speed_Run_Time = 0
End Function
Run Code Online (Sandbox Code Playgroud)

但是试图编译它会让'对象模块需要为接口'Cast_Speed'实现'Run_Time'.谁能看到我做错了什么?我的子程序似乎很好,但我尝试的所有功能都有这个问题.

vb6

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

我应该声明这些方法是什么?

我正在研究一些C++代码,其中我有几个私有方法的管理器对象,如

void NotifyFooUpdated();
Run Code Online (Sandbox Code Playgroud)

OnFooUpdated()在该对象的侦听器上调用该方法.

请注意,它们不会修改此对象的状态,因此它们在技术上可以成为const方法,即使它们通常会修改整个系统的状态.特别是,侦听器对象可能会回调此对象并对其进行修改.

就我个人而言,我想留下它们,而不是宣布它们const.

但是,我们的静态代码检查器QAC将此标记为偏差,因此我要么必须声明它们const,要么我必须争论为什么它们应该保持非常量并获得偏差的授权.

没有声明这些方法的论据是什么const
或者我应该关注QAC并宣布它们const
我应该采用仅限于此对象的严格本地观点,还是将系统视为一个整体?

c++ const static-code-analysis const-method

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

IE Javascript错误"对象不支持此属性或方法"在jQuery中

出于某种原因,我在jquery.js(版本1.4.3,非压缩版本)的第3156行的Internet Explorer 8中收到以下Javascript错误:Object doesn't support this property or method.Firefox和谷歌浏览器中没有错误.

这是错误发生的行:

if ( (match = Expr.leftMatch[ type ].exec( expr )) != null && match[2] ) {
Run Code Online (Sandbox Code Playgroud)

Investigation(console.log(Expr.leftMatch[type]))产生以下有趣结果:在谷歌浏览器中输出

/(^(?:.|\r|\n)*?):((?:[\w\u00c0-\uFFFF\-]|\\.)+)(?:\((['"]?)((?:\([^\)]+\)|[^\(\)]*)+)\3\))?(?![^\[]*\])(?![^\(]*\))/
Run Code Online (Sandbox Code Playgroud)

但是在Internet Explorer中,这是输出:

function() {
  var p = this;
  do p = p.previousSibling;
  while (p && p.nodeType != 1);
  return p;
}
Run Code Online (Sandbox Code Playgroud)

其中exec无法调用(未定义).jquery.js中不存在引用的函数.有没有人知道为什么会发生这种情况,或者我能做些什么来解决它?

遗憾的是,我还没有能够创建一个简单的脚本来重现这个问题,虽然我确实找到了这个有同样问题的帖子,但它没有提供解决方案(最后一篇文章建议该页面应该运行标准模式,但我的已经是).

javascript jquery internet-explorer sizzle

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

WPF - 数据绑定到同一控件的属性

我有一个控件(让我们说一个文本框),我想将一个属性的值(比如工具提示)绑定到同一个控件中的另一个属性的值(比方说文本).

我想要像下面的东西,但我不知道如何将工具提示绑定到同一控件的文本:

<textBox text="abc" tooltip={Binding ???} />
Run Code Online (Sandbox Code Playgroud)

.net data-binding wpf

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

密钥枚举中的 - (减号/下划线)和=(等于/加号)键的枚举是什么?

我似乎无法在这里找到它们.

我正在尝试将它们包含在我的热键选择对话框中.

c# winforms

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

C++中基于接口的编程与迭代器的结合.怎么这么简单?

在我的开发中,我正在慢慢地从面向对象的方法转向基于接口的编程方法.更确切地说:

  • 在过去,如果我能在课堂上分组逻辑,我已经满意了
  • 现在我倾向于在界面后面添加更多逻辑并让工厂创建实现

一个简单的例子澄清了这一点.

过去我写过这些课程:

  • 图书馆

现在我写这些类:

  • ILibrary
  • 图书馆
  • LibraryFactory
  • 我订了
  • BookFactory

这种方法允许我轻松地为每个接口实现模拟类,并在旧的,较慢的实现和新的,更快的实现之间切换,并在同一个应用程序中进行比较.

对于大多数情况,这非常好,但如果我想使用迭代器来循环集合,它就会成为一个问题.

假设我的图书馆有一系列书籍,我想对它们进行迭代.在过去,这不是问题:Library :: begin()和Library :: end()返回一个迭代器(Library :: iterator),我可以在其上轻松编写循环,如下所示:

for (Library::iterator it=myLibrary.begin();it!=mylibrary.end();++it) ...
Run Code Online (Sandbox Code Playgroud)

问题是在基于接口的方法中,不能保证ILibrary的不同实现使用相同类型的迭代器.如果例如OldLibrary和NewLibrary都继承自ILibrary,那么:

  • OldLibrary可以使用std :: vector来存储它的书籍,并在其开始和结束方法中返回std :: vector :: const_iterator
  • NewLibrary可以使用std :: list来存储它的书籍,并在其开始和结束方法中返回std :: list :: const_iterator

要求两个ILibrary实现都返回相同类型的迭代器也不是解决方案,因为在实践中,增量操作(++ it)需要在两个实现中以不同方式实现.

这意味着在实践中我必须使迭代器成为一个接口,这意味着应用程序不能将迭代器放在堆栈上(典型的C++切片问题).

我可以通过在非接口类中包装iterator接口来解决这个问题,但对于我尝试obtian的东西,这似乎是一个非常复杂的解决方案.

有没有更好的方法来处理这个问题?

编辑: 马丁发表评论后的一些澄清.

假设我有一个类,它返回按受欢迎程度排序的所有书籍:LibraryBookFinder.它有begin()和end()方法,它们返回一个引用书籍的LibraryBookFinder :: const_iterator.

要用一个全新的实现替换旧的实现,我想将旧的LibraryBookFinder放在ILibraryBookFinder接口后面,并将旧实现重命名为OldSlowLibraryBookFinder.

然后我的名为VeryFastCachingLibraryBookFinder的新(快速快速)实现可以继承ILibraryBookFinder.这是迭代器问题的来源.

下一步可能是隐藏工厂后面的界面,在那里我可以要求工厂"给我一个'发现者'非常擅长根据人气,或根据标题,或作者,...返回书籍.你最终得到了像这样的代码:

ILibraryBookFinder *myFinder = LibraryBookFinderFactory (FINDER_POPULARITY);
for (ILibraryBookFinder::const_iterator it=myFinder->begin();it!=myFinder.end();++it) ...
Run Code Online (Sandbox Code Playgroud)

或者如果我想使用其他标准:

ILibraryBookFinder *myFinder = LibraryBookFinderFactory (FINDER_AUTHOR);
for (ILibraryBookFinder::const_iterator it=myFinder->begin();it!=myFinder.end();++it) ...
Run Code Online (Sandbox Code Playgroud)

LibraryBookFinderFactory的参数可以由外部因素决定:配置设置,命令行选项,对话框中的选择,......每个实现都有自己的优化(例如,书籍的作者不会改变)所以这可以是一个非常静态的缓存;流行度可以每天改变,这可能意味着完全不同的数据结构).

c++ iterator design-patterns interface

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

CABasicAnimation问题

所以,我在文档中读过,使用像

beginAnimation
commitAnimation
Run Code Online (Sandbox Code Playgroud)

不鼓励os4.0.

所以我试图通过使用CABasicAnimation来使我的代码工作.我希望实现一个图像的框架从我的视图中某处的缩略图大小调整到我的iPhone上的全宽位置,例如(0,120,320,240).

到目前为止我所拥有的:

[CATransaction begin];
[CATransaction setValue:[NSNumber numberWithFloat:1.0] forKey:kCATransactionAnimationDuration]; 

CABasicAnimation *scalingAnimation;
scalingAnimation = [CABasicAnimation animationWithKeyPath:@"transform"];
scalingAnimation.duration=1.0/2;
scalingAnimation.autoreverses=YES;
scalingAnimation.timingFunction = [CAMediaTimingFunction functionWithName:kCAMediaTimingFunctionEaseOut];
scalingAnimation.fromValue=[NSValue valueWithCATransform3D:CATransform3DMakeScale(1.0, 1.0, 1.0)];
scalingAnimation.toValue=[NSValue valueWithCATransform3D:CATransform3DMakeScale(4, 4, 1)];

[b.layer addAnimation:scalingAnimation forKey:@"scaling"];

[CATransaction commit];
Run Code Online (Sandbox Code Playgroud)

我的nextstep将首先尝试将图像移动到居中位置,然后将其缩放到正确的大小.但是,我怀疑我是否正确行事.任何人都可以评论我的代码/方法....有更好的方法吗?

iphone scale uiimage cabasicanimation

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

如何将Inno Setup脚本分成多个文件?

我有两个共享公共代码的安装脚本.有可能重构它们吗?一种方法是使用公共代码的文件,每个脚本都会引用该文件.这可能吗?

refactoring inno-setup

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

实体框架有多安全?

只是想知道实体框架是否设置为处理SQL注入盒子之类的东西?

我看过的每个教程,视频,书籍或博客文章.没有人提到安全性,并且似乎直接将变量传递给上下文而没有检查等...

只是想知道人们的想法是什么,你如何处理这方面的事情?

c# linq asp.net entity-framework

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