当有人要求你在Java面试中为连接池编写(做/描绘)设计时,你通常会写什么.
您是否为连接池编写代码或者是否描述了类图.有人可以解释一下连接池的设计.
作为我项目的一部分,我需要在Silverlight中使用一些Unamanged代码dll.如果我将这些非托管dll包装在C#dll中,我将能够从silverlight访问本机dll.我使用Visual Studio 2010和Silverlight 4.0
我有一个用gcc和vc ++编译的代码.代码有一个公共宏,在两个场景中调用.
这种代码的一个例子是:
#define B(X) A1##X
int main() {
int B(123), B();
return 0;
}
Run Code Online (Sandbox Code Playgroud)
编译预处理步骤的期望输出是:
int main() {
int A1123, A1;
return 0;
}
Run Code Online (Sandbox Code Playgroud)
gcc和vc ++的输出都是预期的,但vc ++会发出警告:
warning C4003: not enough actual parameters for macro 'B'
Run Code Online (Sandbox Code Playgroud)
如何删除此警告并获得预期输出?
谢谢.
我正在通过以下代码检索IEnumerable属性列表:
BindingFlags bindingFlag = BindingFlags.Instance | BindingFlags.Public;
var dataProperties = typeof(myParentObject).GetProperties(bindingFlag);
Run Code Online (Sandbox Code Playgroud)
然后我迭代列表并检索每个属性的值.
我遇到过两种不同的方法,只是想知道它们之间有什么区别:
1)
object propertyValue = property.GetGetMethod().Invoke(myObject, null);
Run Code Online (Sandbox Code Playgroud)
2)
object propertValue = property.GetValue(myObject, null)
Run Code Online (Sandbox Code Playgroud) 自从我开始以测试/行为驱动的方式开发以来,我欣赏能够模拟每个依赖项.
由于像Moq这样的模拟框架在被告知模拟界面时效果最好,我现在几乎为每个创建b/c的类实现一个接口,最有可能我最终必须在测试中模拟它.好吧,无论如何,编程到接口是很好的做法.
有时,我的类依赖于.Net类(例如FileSystemWatcher,DispatcherTimer).在这种情况下,拥有一个接口会很棒,所以我可以依赖于IDispatcherTimer,以便能够传递一个模拟并模拟其行为,以查看我的被测系统是否正确反应.
不幸的是,上面提到的两个类都没有实现这样的接口,所以我不得不求助于创建适配器,除了继承原始类并且符合接口之外什么也不做,然后我可以使用它.
以下是DispatcherTimer和相应接口的适配器:
using System;
using System.Windows.Threading;
public interface IDispatcherTimer
{
#region Events
event EventHandler Tick;
#endregion
#region Properties
Dispatcher Dispatcher { get; }
TimeSpan Interval { get; set; }
bool IsEnabled { get; set; }
object Tag { get; set; }
#endregion
#region Public Methods
void Start();
void Stop();
#endregion
}
/// <summary>
/// Adapts the DispatcherTimer class to implement the <see cref="IDispatcherTimer"/> interface.
/// </summary>
public class DispatcherTimerAdapter : DispatcherTimer, IDispatcherTimer
{
}
Run Code Online (Sandbox Code Playgroud)
虽然这不是世界末日,但我想知道,为什么.Net开发人员没有花时间让他们的类从get开始实现这些接口.这让我很困惑,因为现在微软内部的良好实践有很大的推动力. …
这段代码有一个有趣的bug:
some_struct struct_array1[10] = {0};
some_struct struct_array2[10] = {0}
int i;
for (i = 0;
i < sizeof(struct_array1) / sizeof(struct_array1[0]);
struct_array1[i].value = struct_array2[i++].value = 1)
;
Run Code Online (Sandbox Code Playgroud)
对于大多数编译器,上面的代码导致将相应数组中所有结构的"value"字段设置为1.但是,对于一个特定的编译器(让我们称之为xcc),struct_array1中的结构未正确初始化.对于所有结构,"value"字段设置为0,这让我感到惊讶.
以下代码段在所有编译器上按预期工作:
for (i = 0;
i < sizeof(struct_array1) / sizeof(struct_array1[0]);
i++)
{
struct_array1[i].value = struct_array2[i].value = 1;
}
Run Code Online (Sandbox Code Playgroud)
现在,我完全离开这里,还是有问题的编译器"xcc"只是显示错误?
我在第一个代码片段中找不到任何显示特定于实现的行为的内容; 根据我的理解,后缀增量应该优先于赋值,并且应该从右到左评估赋值.第一个代码片段应该没什么奇怪的,除了它有点不可读.
我正在尝试将UTF-8编码用于我正在开发的Spring应用程序,但是在从tile中插入属性时遇到正确的编码存在问题.
我在JSP模板中有这个片段:
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
<title><tiles:getAsString name="title" /></title>
</head>
<body>
<tiles:insertAttribute name="header" ignore="true" />
....
Run Code Online (Sandbox Code Playgroud)
在我的瓷砖XML配置文件中我有类似的东西:
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE tiles-definitions PUBLIC
"-//Apache Software Foundation//DTD Tiles Configuration 2.1//EN"
"http://tiles.apache.org/dtds/tiles-config_2_1.dtd">
<tiles-definitions>
<definition name="tiles:base" template="/WEB-INF/views/templates/main.jsp">
<put-attribute name="title" value="Título" />
...
Run Code Online (Sandbox Code Playgroud)
我已经检查过eclipse这个文件有UTF-8编码.尽管JSP的其余部分是正确的(例如插入头部的JSP片段),但在页面中未正确显示title属性中传递的单词(重音字符以错误的方式显示).如果我将编码更改为ISO-8859-1标题是正常的,但页面的其余部分是错误的.我似乎无法在我的tile文件中将编码更改为UTF-8.我还在我创建的文件中查找了"ISO-8859-1",但我没有在任何文件中设置此配置.
任何人都可以告诉我如何为瓷砖设置正确的编码?
谢谢
json_decode函数不是PHP 5.1的一部分,所以我不能使用它.这个版本还有其他功能吗?
我需要将一个字符串转换为另一个字符串,它在第二个字之前删除了任何内容
这个例子,
string = "xyz anything else"
string2 = "xyz anything else"
string3 = "xyz anything else"
Run Code Online (Sandbox Code Playgroud)
对此,
string = "anything else"
string2 = "anything else"
string3 = "anything else"
Run Code Online (Sandbox Code Playgroud)
我做的方式根本不讨好我,它不是pythonic而且它太大了.用Python做最好的方法是什么?