问题列表 - 第8322页

而(1)Vs. for(;;)有速度差吗?

长版......

一位同事在看到我while (1)在Perl脚本中使用for (;;)更快后断言了.我认为他们应该是一样的,希望翻译能够优化任何差异.我设置了一个脚本,它将运行1,000,000,000次循环迭代和相同数量的while循环并记录它们之间的时间.我找不到明显的区别.我的同事说,一位教授告诉他,这while (1)是在进行比较1 == 1而事实for (;;)并非如此.我们用100倍的C++迭代次数重复相同的测试,差异可以忽略不计.然而,它是一个图形示例,说明编译代码与脚本语言相比可以更快.

精简版...

没有任何理由,更喜欢一个while (1)比一个for (;;),如果你需要一个无限循环打出来的?

注意:如果问题不清楚.这在几个朋友之间纯粹是一次有趣的学术讨论.我知道这不是一个超级重要的概念,所有程序员都应该为之痛苦.感谢所有伟大的答案我(我相信其他人)从这次讨论中学到了一些东西.

更新:前面提到的同事在下面做出回应.

这里引用以防它被埋没.

它来自AMD汇编程序员.他说C程序员(人们)没有意识到他们的代码效率低下.他今天说,gcc编译器非常好,让像他这样的人破产.他举例称,并告诉我关于while 1VS for(;;).我现在出于习惯而使用它,但是gcc和特别是解释器在这些日子里都会做同样的操作(处理器跳转),因为它们已经过优化.

c++ optimization perl performance

152
推荐指数
13
解决办法
5万
查看次数

如何在页面加载之前执行Javascript函数?

我正在使用隐藏字段'Isjsenabled'来检测客户端的Javascript是启用还是禁用.如果启用了Javascript,则会触发Javascript函数,并将隐藏字段的值设置为1.

我想检查服务器端Page_load的隐藏值.但问题是在页面加载后Javascript被触发.

你有什么建议吗?

Html部分

<script type="text/javascript">
    $(function() {
        $("#<%= Isjsenabled.ClientID %>").val(1);
    }); 
</script>

<input id="Isjsenabled" runat="server" value ="0"  type="hidden"  />
Run Code Online (Sandbox Code Playgroud)

部分背后的代码

protected void Page_Load(object sender, EventArgs e) {                
    HtmlInputHidden hdn = this.FindControl("Isjsenabled") as HtmlInputHidden;
        if (hdn != null)
            if (hdn.Value != null && hdn.Value == "0")
                Helper.SetCookie("IJE", "0");
            else
                Helper.SetCookie("IJE", "1");
}
Run Code Online (Sandbox Code Playgroud)

.net javascript browser asp.net

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

如何获得OS X系统版本?

我想获得OS X系统版本,例如:10.5.4,10.4.8等.我想在我的应用程序中获取它,我该怎么做?谢谢!

macos cocoa

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

Adobe Air可以跟踪其他窗口吗?

Adobe Air可用于跟踪其他窗口吗?我想构建一个跟踪某些窗口打开时间的应用程序.这可能吗?

air

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

清除多个工作进程的ASP.net缓存

我们有一个ASP.net(2.0)应用程序,配置为使用IIS中的Web园选项与多个工作进程一起运行.我们的大多数数据都是缓存的,偶尔我们必须在网站发生变化时清除缓存.我们有一个简单的页面,它将遍历HttpCache项并清除它们.

但是每个工作进程都有自己的HttpCache对象副本,因此当我们请求缓存刷新页面时,它只清除为特定请求提供服务的进程的缓存.不清除其他工作进程的缓存.

除了以编程方式回收应用程序池之外,有没有办法清除所有工作进程的HttpCache?

asp.net caching worker-process

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

关联,聚合和组合有什么区别?

关联,聚合和组合有什么区别?请解释一下实施情况.

oop uml associations composition aggregation

361
推荐指数
18
解决办法
34万
查看次数

php5可以与php4共存吗?

我用apache.我想让php4在一台服务器上与php5共存,但是会有什么样的方法?

php apache

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

Delphi中的命名/可选参数?

在其中一个Delphi演示应用程序中,我偶然发现了一些我不知道Delphi编译器接受的语法:

// ......\Demos\DelphiWin32\VCLWin32\ActiveX\OleAuto\SrvComp\Word\    
// Main.pas, line 109

Docs.Add(NewTemplate := True); // note the assignment
Run Code Online (Sandbox Code Playgroud)

我似乎无法重现这种类型的参数传递我自己的代码,我从来没有看到任何人使用它.所以这些是我的问题:

  • 我可以在"普通"方法中使用它,它是"Delphi语言"的一部分,还是一些编译器破解自动化对象?

  • 为了能够使用它需要什么?

  • 这有点像C#4的命名和可选参数吗?


附加信息:当方法有许多可选参数时,我通常会传递记录或简单类,但看起来我不需要使用这种语法.我知道默认参数值,但它们的用处是有限的,因为你不能在省略的参数值的右边提供任何参数.在JavaScript中,我一直在使用这个命名参数样式(使用不同的语法),并且功能强大.

delphi optional-parameters named-parameters

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

可以在C#中使用带有非默认构造函数的单例吗?

我正在为我的一个项目实现一个通知框架.由于我希望它非常通用,用户可以使用多个传输层,因此他并不需要关心使用一种传递方法(比如说WCF)或另一种传递方法(例如ActiveMQ).用户可以访问的界面当然与传递方法(WCF或ActiveMQ)无关.尽管如此,这两个类(消费者和生产者)实现了单例,因此它们实际上使用默认构造函数(意思是没有参数).我的问题是,我想有一个参数,用户想要使用的交付方法.但据我所知,单身人士只使用默认构造函数?这是正常的,因为没有必要使用带参数的单例.那么,我的选择是什么?不要创建一个单身人士?创建一个设置交付方式的方法?

非常感谢您的帮助,

塞巴斯蒂安

c# singleton default-constructor

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

C#:限制方法参数中的类型(不是通用参数)

我想编写如下函数

public void Foo(System.Type t where t : MyClass)
{ ... }
Run Code Online (Sandbox Code Playgroud)

换句话说,参数类型是System.Type,我想将允许的Types 限制为派生的MyClass.

有没有办法在语法上指定它,或者t必须在运行时检查?

.net c# polymorphism types

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