问题列表 - 第309页

2149
推荐指数
17
解决办法
65万
查看次数

在C中交换值的最快方法是什么?

我想交换两个整数,我想知道这两个实现中的哪一个会更快:使用临时变量的显而易见的方法:

void swap(int* a, int* b)
{
    int temp = *a;
    *a = *b;
    *b = temp;
}
Run Code Online (Sandbox Code Playgroud)

或者我确定大多数人看过的xor版本:

void swap(int* a, int* b)
{
    *a ^= *b;
    *b ^= *a;
    *a ^= *b;
}
Run Code Online (Sandbox Code Playgroud)

看起来第一个使用额外的寄存器,但第二个使用三个加载和存储,而第一个只执行两个.有人能告诉我哪个更快,为什么?为什么更重要.

c performance

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

我怎样才能用Python代表'Enum'?

我主要是一名C#开发人员,但我目前正在使用Python开发一个项目.

我怎样才能在Python中表示Enum的等价物?

python enums python-3.x

1146
推荐指数
28
解决办法
80万
查看次数

python中lexing,tokenising和parsing的资源

人们可以指向我使用Python进行lexing,解析和标记的资源吗?

我的一个开源项目(做一个小的黑客热线),并希望做的是代码的一些变化LEXES,分析和tokenises进入它的命令.由于它是真正的工作代码,它相当复杂,有点难以解决.

我之前没有处理过lex/parse/tokenise的代码,所以我认为一种方法是在这个方面完成一两个教程.我希望学到足够的知识来浏览我真正想要改变的代码.那里有什么合适的吗?(理想情况下,它可以在一个下午完成而无需先购买和阅读龙书......)

编辑:(2008年10月7日)以下所有答案都没有给出我想要的东西.有了它们,我可以从头开始生成解析器,但我想学习如何从头开始编写自己的基本解析器,而不是使用lex和yacc或类似的工具.完成后,我可以更好地理解现有代码.

那么有人可以指向我一个教程,我可以从头开始构建一个基本的解析器,只使用python?

python resources parsing lex

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

你如何在psql中使用脚本变量?

在MS SQL Server中,我创建脚本以使用可自定义的变量:

DECLARE @somevariable int  
SELECT @somevariable = -1

INSERT INTO foo VALUES ( @somevariable )
Run Code Online (Sandbox Code Playgroud)

然后我将@somevariable在运行时更改值,具体取决于我在特定情况下所需的值.由于它位于脚本的顶部,因此很容易看到并记住.

我如何对PostgreSQL客户端做同样的事情psql

sql postgresql variables psql

122
推荐指数
10
解决办法
20万
查看次数

是否有一种标准方法可以从Windows窗体中的自定义对话框返回值?

所以现在我的项目有一些自定义对话框,可以提示用户过生日等等.现在他们只是做一些事情,比如this.Birthday一旦他们得到答案(属性类型DateTime?,设置属性,其中null表示"取消").然后调用者检查Birthday它创建的对话框的属性以找出用户回答的内容.

我的问题是,是否有更标准的模式来做这样的事情?我知道我们可以设置this.DialogResult基本的OK/Cancel内容,但是在Windows窗体中是否有一种更通用的方式来表示"这里是我收集的数据"?

.net user-interface winforms

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

使用WCF对服务进行版本控制的最佳实践?

我几乎只在WCF中开始使用我的模型,并希望获得一些实用的方法来对这些服务进行版本控制.谁能指出我正确的方向?

versioning wcf backwards-compatibility

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

你应该使用受保护的成员变量吗?

你应该使用受保护的成员变量吗?有什么优势,这会带来什么问题?

oop protected

94
推荐指数
7
解决办法
6万
查看次数

我可以使用哪些服务根据用户的IP地址查找用户的位置?

如果您需要根据用户的IP地址找到用户,可以使用哪些服务(免费而非免费服务)?

PS我明白一些用户使用代理等,这意味着结果不是100%准确.没关系.

location geography ip-address

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

Java:再次通知()与notifyAll()

如果一个谷歌用于"区别notify()和之间notifyAll()",那么会弹出很多解释(将javadoc段落分开).这一切都归结为等待线程被唤醒的数量:一个进入notify()和全部进入notifyAll().

但是(如果我确实理解了这些方法之间的区别),总是只选择一个线程用于进一步的监视器获取; 在第一种情况下,由VM选择的一种情况,在第二种情况下由系统线程调度程序选择的一种情况.一般情况下,程序员都不知道它们的确切选择程序(在一般情况下).

那么notify()notifyAll()之间的有用区别是什么?我错过了什么吗?

java multithreading

364
推荐指数
13
解决办法
21万
查看次数