问题列表 - 第13221页

c#中的函数装饰器

Python的函数装饰器是否有C#模拟?感觉它可以使用属性和反射框架,但我没有看到在运行时替换函数的方法.

Python装饰器通常以这种方式工作:

class decorator(obj):
    def __init__(self, f):
        self.f = f
    def __call__(self, *args, **kwargs):
        print "Before"
        self.f()
        print "After"

@decorator
def func1():
    print "Function 1"

@decorator
def func2():
    print "Function 2"
Run Code Online (Sandbox Code Playgroud)

然后调用func1和func2将导致

Before
Function 1
After
Before
Function 2
After

我们的想法是装饰器可以让我轻松地在多个功能的入口和出口点添加常见任务.

c# python reflection decorator

22
推荐指数
2
解决办法
5371
查看次数

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

使用选择器请求回调

我如何声明一个具有带选择器的方法/消息的类,存储选择器的值,然后稍后调用选择器?

如果它被称为SomeObject它将被调用如下:

-(id) init {
    // normal stuff here
    o = [[SomeObject alloc] init];
    return self;
}

-(void) checkSomething {
    [o checkSomethingWithResponse: @selector(answer:)]
}

-(void) answer: (int) value {
    NSLog(@"Check complete: %d", value);
}
Run Code Online (Sandbox Code Playgroud)

(对不起,我知道这可能是RTFM,但我自己找不到任何信息)

cocoa objective-c

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

是否可以在交换机内使用for循环?

我正在尝试以下内容:

 switch ($p) {
    foreach ($modules as $m) {
    case '"'.$mod.'"':
    include 'modules/'.$m.'/cases.php';
    break;
    }
 }
Run Code Online (Sandbox Code Playgroud)

但无法让它发挥作用.是否可以在交换机内以这种方式使用for循环?

php for-loop switch-statement

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

开始学习边缘检测/图像识别的最佳文章

我参与了一个个人项目,需要相当广泛的边缘检测和图像分割/对象识别知识.

在编写代码之前,我知道规划/理解的重要性,考虑到这一点,开始学习这些计算领域的最佳位置是什么?我理想地寻找在线文章/论文.

谢谢

algorithm image-processing computer-vision edge-detection

18
推荐指数
2
解决办法
4556
查看次数

什么是C++中的"集合"?它们什么时候有用?

我很难概念化c ++集,实际上是一般的.

这些是什么?它们有用吗?

c++ computer-science set

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

有没有免费的私人Bazaar在线资源主机?

我正在寻找一个免费的私人在线Bazaar源主机.有人知道吗?我快速看了一下,似乎有很多Git,Mercurial和SVN选项,但没有Bazaar?

只是为了澄清,当我说"私人"时,我的意思是你有自己的私人存储库,你可以授予你选择的人访问权限.

version-control hosting dvcs bazaar

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

拦截华硕笔记本电脑上的媒体键

我有一台华硕笔记本电脑(F50SF),我正在玩C++试图拦截多媒体键(下一首音轨,上一首曲目,播放/暂停等),但我无法弄明白如何做到这一点.我试过GetAsyncKeyState(VK_MEDIA_NEXT_TRACK)但无济于事.

我知道这是可能的(并且密钥首先在工作),因为这些密钥在Windows Media Player中可以正常工作.

有任何想法吗?

keyboard keyboard-events

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

谁拥有NSWindowController,在标准做法?

在看到负责释放NSWindowController对象后,我正在寻求进一步的澄清

我正在为我的侄子写一个简单的库存管理应用程序.我有一个表格视图,显示其"库"等的内容.要向库中添加新项目,他们会单击"+"按钮.此按钮将打开一个新窗口,提示他们输入项目的详细信息,并在单击"确定"时验证输入.

所有这一切都很好.但是,我对内存管理有疑问.要创建新窗口,我使用以下代码:

- (IBAction)addNewItem:(id)sender {
  LibraryItemEditorController *editorController = 
    [[LibraryItemEditorController alloc] 
          initWithWindowNibName:@"LibraryItemEditor"];

  [editorController showWindow:nil];
  // editorController is "leaked" here, it seems.
}
Run Code Online (Sandbox Code Playgroud)

我不能editorController在最后发布(也不自动发布)addNewItem:,因为没有别的东西在引用editorController; 如果我释放它,窗口会立即消失.但是,我希望窗口控制器在窗口关闭后释放.在Apple的Window Programming Guide中,我阅读了以下内容:

如果你想关闭一个窗口使窗口和窗口控制器在它不是文档的一部分时消失,你的子类 NSWindowController可以观察 NSWindowWillCloseNotification或作为窗口委托实现该 windowWillClose:方法并在下面包含以下代码行:你的实施:

[self autorelease];
Run Code Online (Sandbox Code Playgroud)

我用过窗口控制器[self autorelease]windowWillClose:方法.这样做,并且不会泄漏内存.然而,它只是感觉丑陋; addNewItem:看起来它正在泄漏记忆,而静态分析也是如此. 知道它实际上是在照顾windowDidClose:,但它只是感觉不对.此外,窗口控制器现在正在释放自身,而没有保留自己.这一切都违背了我所学到的内存管理规则.

我的另一个选择是把父控制器(可以是伊娃NSWindowControllerNSMutableSetNSWindowController多个),然后查看该NSWindowWillCloseNotification父控制器和响应释放.这更清洁,可能就是我要做的.不过,这也是一项相当多的工作,这引出了我的问题.

正在注意NSWindowDidCloseNotification这样做的标准方式吗?NSWindowControllers根据需要创建和销毁的标准管理方法是什么?这是[self autorelease]传统推荐选项的方式,现在我们只有静态分析这是一个问题吗?

cocoa objective-c

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

水平滚动 div 在 Safari 中不起作用

嗨,我不久前在我的餐桌上创建了这个网站,但刚刚意识到水平滚动潜水在 Safari 中不起作用。

#galleryscroller {
    overflow-x:scroll ;
    overflow-y:hidden;
    overflow:-moz-scrollbars-horizontal !important;
    height:138px; 
    width:360px;
}

<div id="galleryscroller">
<table width="100%"  border="0" cellspacing="0" cellpadding="6">
<tr align="left" valign="middle">
<td><a onclick="return showPic(this)" href="blahblah.jpg"><img src="blahblah.jpg" alt="Events" width="76" height="100" border="0" /></a></td>
<td><a onclick="return showPic(this)" href="blahblah.jpg"><img src="blahblah.jpg" alt="Events" width="100" height="67" border="0" /></a></td>
</tr>
</table>
</div>
Run Code Online (Sandbox Code Playgroud)

该网站在这里 - www.tobymurphy.com

任何人都可以帮忙吗?到目前为止,谷歌上的答案都没有奏效......

html css safari cross-browser horizontal-scrolling

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