问题列表 - 第37473页

php:获取函数中可见的变量

有没有办法获取函数中定义的变量列表,或函数中所有可访问变量的列表?

php scope

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

如何处理代码中的优化

我目前正在为一些代码编写各种优化.每个优化都会对代码效率产生很大影响(希望如此),但也会影响源代码.但是,我希望保留启用和禁用其中任何一个以进行基准测试的可能性.

我传统上使用这种#ifdef OPTIM_X_ENABLE/#else/#endif方法,但代码很快就难以维护.

还可以为每个优化创建SCM分支.在您想要启用或禁用多个优化之前,代码可读性要好得多.

有没有其他的,希望更好的方法与优化一起工作?

编辑:一些优化不能同时工作.我可能需要禁用旧的优化来替换新的优化,看看我应该保留哪一个.

c c++ optimization

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

寻找所见即所得的网页编辑器

我正在为我的内部网用户寻找一个WYSIWYG编辑器.它不应该显示或给它们一个html选项,而应该有粗体,斜体,项目符号,注释,字体颜色,HTML链接等东西的按钮.

哪种WYSIWYG编辑器最适合这些需求?

html javascript jquery

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

MaxReceivedMessageSize:为什么单向调用客户端和服务器?

大家好,我正在尝试完全理解WCF配置选项.有一件事我完全不理解.为什么我要向客户端和服务器说MaxReceivedMessageSize是x KB?我的意思是我有一个服务,它暴露了一组点火即可(没有回调).客户为什么要知道MaxReceivedMessageSize有多少?如果我不告诉客户什么,会发生什么?它是否会使用默认大小,如果消息大于它超过?

谢谢,马可

wcf

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

是否可以修改函数的返回值而无需在python中定义新函数?

def foo(a, b, c = 0):
    return a+b
Run Code Online (Sandbox Code Playgroud)

我有很多像'foo'这样的函数,它们都有不同的参数编号和名称.有没有一种常见的方法可以获得这些函数的返回值,并只对它们执行一个额外的操作,如pformat?

是的我可以生成如下的新功能:

func = ...  # func can be got using getattr by name
def wrapper(*arg, **kw):
    data = func(*arg, **kw)
    return pprint.pformat(data)
return wrapper
Run Code Online (Sandbox Code Playgroud)

但是新函数'wrapper'与旧的'func'不同,例如,在参数编号中,'wrapper'只有2个args - 'arg'和'kw',但'func'可能有很多args ,像'a','b','c'.

我只想玩返回值,其他一切应该保持不变,是否可能?

谢谢!

更新 最后使用装饰模块和以下补丁解决了这个问题:

--- /home/jaime/cache/decorator-3.2.0/src/decorator.py  2010-05-22 23:53:46.000000000 +0800
+++ decorator.py    2010-10-28 14:55:11.511140589 +0800
@@ -66,9 +66,12 @@
             self.name = '_lambda_' 
             self.doc = func.__doc__
             self.module = func.__module__
-            if inspect.isfunction(func):
+            if inspect.isfunction(func) or inspect.ismethod(func):
                 argspec = inspect.getargspec(func)
                 self.args, self.varargs, self.keywords, …
Run Code Online (Sandbox Code Playgroud)

python

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

在rails中清除会话变量的最佳方法是什么?

session[:message] = nil
Run Code Online (Sandbox Code Playgroud)

这是销毁会话变量的最佳方法吗?

注意:我不想清除所有会话变量reset_session.

session ruby-on-rails

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

在main()执行之前实例化类的对象

是否有可能以实例的main()执行之前,甚至一个类的对象?如果是,我该怎么办?

c++

6
推荐指数
2
解决办法
760
查看次数

android:layout_weight是什么意思?

我不明白如何使用这个属性.谁能告诉我更多关于它的事情?

android android-widget android-layout

639
推荐指数
9
解决办法
33万
查看次数

#[...]在emacs-lisp中意味着什么?

我对这个表达感到困惑

#[nil "\300\207"
      [nil]
      1]
Run Code Online (Sandbox Code Playgroud)

作为一个价值skeleton-pair-filter-function.

这是在elisp中编写函数的另一种方法吗?或者一般的lisp?

谢谢.

lisp emacs elisp

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

为什么添加返回类型会阻止我使用方法组语法?

我正在尝试在lambda表达式中使用方法组,如下所示:

public class Foo { public void Hello(string s) { } }

void Test()
{
    // this works as long as Hello has a void return type
    Func<Foo, Action<string>> a = foo => foo.Hello;
}
Run Code Online (Sandbox Code Playgroud)

当我改变的返回类型Helloint,不过,我得到

'Bar.Hello(string)'的返回类型错误.

我试过用Func它代替Action,但这似乎阻止我使用方法组语法.

有任何想法吗?

(我的目标,fwiw,是能够引用具有不同返回类型和大量字符串参数的众多方法.我甚至不想打电话给它们 - 我只想反思它们的属性.我喜欢安全性然而,lambda只是键入方法名称字符串.)


编辑:澄清我想要使用的原因Action<string>:int在我的例子中可能是多种类型中的任何一种.我尝试模仿那种类型 -

void Set<T>(Func<Foo, Func<string, T>> a) { }
void Test() { Set(foo => foo.Hello); }  // fails
Run Code Online (Sandbox Code Playgroud)

- 但是编译器无法派生T(大概是出于同样的原因我不能在返回类型上重载?).

还有其他想法吗?只要我能让编译器检查该方法组的名称,我就不会在这种情况下反对一些疯狂的反思.

c# lambda method-group

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