假设由FirstBar和SecondBar实现的Foo和IBar实现了IFoo.
使用此约定注册:
container.Register(
AllTypes.FromThisAssembly().Pick()
.WithService.DefaultInterface())
Run Code Online (Sandbox Code Playgroud)
我们在容器中有三个条目:
IFoo = Foo
IBar = FirstBar
IBar = SecondBar
Run Code Online (Sandbox Code Playgroud)
现在,我们如何调整此注册以告知容器对于IBar我们只想注册SecondBar?有点:
container.Register(
AllTypes.FromThisAssembly().Pick()
.WithService.DefaultInterface()
.For<IBar>().Select<SecondBar>())
Run Code Online (Sandbox Code Playgroud)
使用案例:我们的应用程序中有很多服务都是按惯例注册的.但是,一些服务接口具有两个或更多实现(例如,实现,虚假实现和测试实现).公约注册将在同一界面下注册它们,在解析界面时,我们将获得第一个实现(以非确定性顺序).我们希望能够在注册时为这些服务选择一个特定的实现.我们怎么做?
我希望显示一个文本,就好像它只是被输入一样.所以每封信后我都需要一点延迟.
我试着这样做:
import time
text = "Hello, this is a test text to see if all works fine."
for char in text:
print char,time.sleep(0.2),
Run Code Online (Sandbox Code Playgroud)
除了一个问题,它工作正常.每个角色后我都会得到一个"无".
这是输出:
H无e无l无l无o无,无无无无无无无无无无无无无无无无无无无无无无无无无无无无无无无无无o无无s无e无无无i无f无无a无l无l无无w无o无r无k无s无无f无i无无无e无.没有
我不知道为什么会这样.我希望有人能帮助我.
我一直在打磨我过去一两天建立的一个页面,在使用了box-shadow之后遇到了一个问题 - 我希望有人可以通过简单的方法来解决这个问题.
设置: 我有一个div有一些属性,包括宽度,最大宽度和框阴影.
#mydiv {
width:100%;
max-width:1200px;
-webkit-box-shadow: 0px 0px 20px rgba(0, 0, 0, 1);
-moz-box-shadow: 0px 0px 20px rgba(0, 0, 0, 1);
box-shadow: 0px 0px 20px rgba(0, 0, 0, 1);
}
Run Code Online (Sandbox Code Playgroud)
问题: "box-shadow"属性将div元素的宽度增加40px - 每侧20px.当屏幕足够小以至于内容应该达到100%宽度属性时,我们会看到一个水平滚动条.在通过CSS挖掘之后,我发现这是因为div在技术上更像宽度:100%+ 40px;
我试过的: 我考虑过设置溢出:隐藏在父div上,但我确实有一个最小宽度设置,然后使内容无法访问.我也尝试在box-shadow CSS中使用百分比作为大小参数 - 例如1% - 然后将div的宽度设置为98% - 但是box-shadow CSS似乎不接受其百分比尺寸.我也考虑使用javascript来测试浏览器宽度,然后相应地显示或隐藏box-shadow元素,但它似乎不是最佳解决方案.
必须有一种更简单的方法来处理这个问题.思考?
假设我想这样做:
$a = array_intersect_assoc( array( 'key1' => array( 'key2' => 'value2' ), 'key3' => 'value3', 'key4' => 'value4' ), array( 'key1' => array( 'key2' => 'some value not in the first parameter' ), 'key3' => 'another value' ) ); var_dump( $a );
打印结果是:
array
'key1' =>
array
'key2' => string 'value2' (length=6)
很明显,两个数组中与'key2'关联的值不相同,但array_intersect_assoc()仍然'key2' => 'value2'作为相交值返回.
这是预期的行为array_intersect_assoc()吗?
谢谢!
我正在开发一个Android 2.2应用程序.我使用C++来管理所有OpenGL ES 2.0的东西.
我想用OpenGL显示一个文本,但我不知道(我是非常非常新的).
我读到我可以渲染常见的字符串到纹理,并简单地绘制这些纹理.但是我该怎么做呢?
谢谢.
我有以下代码执行非常简单的操作:递归访问Node对象树并计算名为Info的属性的总和.
using System;
namespace ConsoleApplication11
{
static class Program
{
static void Main(string[] args)
{
//tree of nodes
var node = new Node {Info = 1, Left = new Node {Info = 1}};
//print out sum
Console.WriteLine(node.Sum());
Console.ReadLine();
}
//find sum of Info of each node
static int Sum(this Node node)
{
return node.Info + (node.Left == null ? 0 : Sum(node.Left)) + (node.Right == null ? 0 : Sum(node.Right));
}
}
public class Node
{
public int Info { …Run Code Online (Sandbox Code Playgroud) 在使用NSOperationQueue并尝试更改滑块/拾取器等时遇到iphone设备上的大量泄漏
我能够毫无问题地更改标签,但如果我尝试更改在界面构建器上创建的滑块或选取器,我会收到这些泄漏.
Leaked Object # Address Size Responsible Library Responsible Frame
GeneralBlock-16 0x1b00a0 16 GraphicsServices GetFontNames
GeneralBlock-16 0x1aea90 16 WebCore WebThreadCurrentContext
GeneralBlock-16 0x1aea80 16 GraphicsServices GSFontGetFamilyName
GeneralBlock-64 0x1a7370 64 UIKit GetContextStack
Run Code Online (Sandbox Code Playgroud)
代码如下
- (void)loadData {
NSInvocationOperation *operation = [[NSInvocationOperation alloc] initWithTarget:self
selector:@selector(firstRun)
object:nil];
[queue_ addOperation:operation];
[operation release];
}
- (void)firstRun {
NSAutoreleasePool *pool = [NSAutoreleasePool new];
[self setSliders];
NSLog(@"firstRun method end");
[pool drain];
}
- (void)setSliders {
NSMutableArray *tempArray = [[[NSMutableArray alloc]init] autorelease];
aquaplannerAppDelegate *appDelegate = (aquaplannerAppDelegate *)[[UIApplication sharedApplication] delegate]; …Run Code Online (Sandbox Code Playgroud) iphone memory-leaks instruments nsoperationqueue nsautoreleasepool
我不小心创建了一个名为"遥控器/原点/遥控器/原点/ aclark"的分支,并且无法删除它:
git branch -d remotes/origin/remotes/origin/aclark
Git说:
错误:找不到分支'remotes/origin/remotes/origin/aclark'.
我在这里尝试了一些建议:删除一个命名不好的git分支,但它们更倾向于以" - "开头的坏分支名称.
有没有最终用户可以删除此分支或我需要一个git管理员?(有问题的分支住在有名的).
谢谢
亚历克斯
当用于返回值的对象为null时,您将从readonly属性抛出什么类型的异常
public class TestClass
{
SomeObject obj;
public string NameOfObject
{
get
{
if(obj == null)
{ // what exception type to throw here }
return obj.Name;
}
}
Run Code Online (Sandbox Code Playgroud)