具体来说,我希望在其他类型的属性上使用CA.
以及CALayers或NSViews以外的对象
假设字符串a和b:
a += b
a = a.concat(b)
Run Code Online (Sandbox Code Playgroud)
引擎盖下,它们是一样的吗?
这里以concat反编译为参考.我希望能够反编译+
运算符以查看它的作用.
public String concat(String s) {
int i = s.length();
if (i == 0) {
return this;
}
else {
char ac[] = new char[count + i];
getChars(0, count, ac, 0);
s.getChars(0, i, ac, count);
return new String(0, count + i, ac);
}
}
Run Code Online (Sandbox Code Playgroud) 我有一个带有Dispose
函数的C#类IDisposable
.它旨在用于using
块内,因此它可以立即释放它所处理的昂贵资源.
问题是在Dispose
调用之前抛出异常时发生了一个错误,并且程序员忽略了使用using
或finally
.
在C++中,我从来不必担心这一点.对类的析构函数的调用将自动插入到对象范围的末尾.避免这种情况发生的唯一方法是使用new运算符并将对象保持在指针后面,但这对于程序员来说需要额外的工作并不是他们偶然会做的事情,比如忘记使用using
.
是否有任何方法using
可以在C#中自动使用块?
非常感谢.
更新:
我想解释为什么我不接受终结者答案.这些答案本身在技术上是正确的,但它们不是C++风格的析构函数.
这是我发现的错误,简化为必需品......
try
{
PleaseDisposeMe a = new PleaseDisposeMe();
throw new Exception();
a.Dispose();
}
catch (Exception ex)
{
Log(ex);
}
// This next call will throw a time-out exception unless the GC
// runs a.Dispose in time.
PleaseDisposeMe b = new PleaseDisposeMe();
Run Code Online (Sandbox Code Playgroud)
使用FXCop
是一个很好的建议,但如果这是我唯一的答案,我的问题必须成为C#人的请求,或使用C++.二十个嵌套使用语句的人吗?
我刚刚注意到Chromium在Vista和XP中都安装在AppData中.如果谷歌这样做,如果其他应用程序这样做,那是因为有某种形式的保护?我们应该编写与Google完全相同的安装程序吗?
我想在Ruby on Rails应用程序中对数据进行全文搜索.有哪些选择?
我正在为一个大约15名开发人员的团队编写一份编码标准文档,每年项目负载10到15个项目.在其他部分(我可能会在这里发布)中,我正在编写一个关于代码格式的部分.首先,我认为无论出于何种原因,我们建立一些基本的,一致的代码格式化/命名标准是明智的.
我看过这个团队过去3年里写的大约10个项目,显然我发现了各种各样的风格.承包商有时进出,有时甚至是团队规模的两倍.
我正在寻找一些代码格式和命名标准的建议,这些建议确实得到了回报......但这也可以证明是合理的.我认为一致性和共享模式对于使代码更易于维护还有很长的路要走......但是,在定义标准时我还应该考虑其他事项吗?
你如何排队括号?在处理类,方法,尝试catch块,switch语句,if else块等时,是否遵循相同的括号指南?
你是否排列了列上的字段?你用下划线表示/前缀私有变量吗?您是否遵循任何命名约定,以便更容易在文件中查找详细信息?你如何订购你班级的成员?
如何建议命名空间,打包或源代码文件夹/组织标准?我倾向于从以下内容开始:
<com|org|...>.<company>.<app>.<layer>.<function>.ClassName
Run Code Online (Sandbox Code Playgroud)
我很想知道是否还有其他更为公认的做法,而不是我习以为常的做法 - 在我冒昧地指示这些标准之前.已经在线发布的标准链接也很棒 - 即使我已经完成了一些.
我们使用的Weblogic服务器已配置为允许JNDI数据源名称,如"appds".
对于开发(localhost),我们可能正在运行Tomcat,并且当在server.xml的<context>部分中声明时,Tomcat将在JNDI树中的"java:comp/env/jdbc/*"上挂起JNDI数据源.
问题:在Weblogic中,JNDI查找是"appds",而在Tomcat中,似乎我必须提供正式的"java:comp/env/jdbc/appds".我担心Tomcat版本是一个隐含的标准,但不幸的是,我不能改变Weblogic的配置...所以这意味着我们最终得到两个不同的spring配置文件(我们使用的是spring 2.5)来促进不同的环境.
有没有一种优雅的方式来解决这个问题.我可以直接在Tomcat中查看JNDI名称吗?Spring可以在两个地方都有名字和外观吗?谷歌搜索或建议会很棒.
我们有一个Java监听器,它从JBossMQ中的队列中读取文本消息.如果我们必须重新启动JBoss,监听器将不会重新连接并再次开始阅读消息.我们每隔2分钟就会在侦听器的日志文件中收到消息,说它无法连接.我们的代码或JBossMQ中是否有设置?我是JMS的新手,所以任何帮助都将不胜感激.谢谢.
Visual Studio 2008的XAML编辑器(SP1)无法将XML重新格式化为一致的样式.
我可以使用哪些工具来获取格式良好的XAML文件?Studio集成首选.
我一直在阅读那些被"测试感染"的人,这意味着他们不只是"获得"TDD,而且也不能没有它.他们已经"改头换面"了.问题是,我该如何做到这一点?
java ×3
.net ×1
c# ×1
cocoa ×1
coding-style ×1
dispose ×1
formatting ×1
idisposable ×1
iphone ×1
java-ee ×1
jboss ×1
jbossmq ×1
jms ×1
jndi ×1
objective-c ×1
string ×1
tdd ×1
testing ×1
tomcat ×1
unit-testing ×1
using ×1
weblogic ×1
windows ×1
wpf ×1
xaml ×1