有没有办法让这个看起来好一点?
conn.exec 'select attr1, attr2, attr3, attr4, attr5, attr6, attr7 ' +
'from table1, table2, table3, etc, etc, etc, etc, etc, ' +
'where etc etc etc etc etc etc etc etc etc etc etc etc etc'
Run Code Online (Sandbox Code Playgroud)
比如,有没有办法暗示连接?
我的问题很简单,但我找不到按照我希望的方式实现代码的方法.所以我开始想知道我想要实现的代码是不是很好.如果是,那么最好的方法是什么.
在这里:
class InputManager
{
SortedDictionary<ushort,Keys> inputList = new SortedDictionary<ushort,Keys>();
public void Add(ushort id, Keys key) {...}
public bool IsPressed(ushort id) {...}
}
class Main
{
private enum RegisteredInput : ushort
{
Up,
Down,
Confirm
}
public Main()
{
InputManager manager = new InputManager();
manager.Add(RegisteredInput.Up, Keys.Q);
manager.Add(RegisteredInput.Down, Keys.A);
manager.Add(RegisteredInput.Confirm, Keys.Enter);
}
void update()
{
if(manager.IsPressed(RegisteredInput.Up)) action();
}
}
Run Code Online (Sandbox Code Playgroud)
此代码将无法编译,会出现此类错误:
'InputManager.Add(ushort,Keys)'的最佳重载方法匹配有一些无效参数
参数'1':无法从'RegisteredInput'转换为'ushort'
如果我使用像manager.Add((ushort)RegisteredInput.Up, Keys.Q);它的演员会工作.但是因为演员必须是明确的,我想知道它是不是在C#中推荐的代码,就像它在C++中,如果有更好的方法(比如使用const ushort每个值,我有点不喜欢) .
到目前为止我得到的最佳答案来自这个帖子,但听起来很像黑客,我很担心.
谢谢!
例如:
public Person newPerson() {
Person p = new Person("Bob", "Smith", 1112223333);
return p;
}
Run Code Online (Sandbox Code Playgroud)
而不是:
public Person newPerson() {
return new Person("Bob", "Smith", 1112223333);
}
Run Code Online (Sandbox Code Playgroud)
一个比另一个更有效吗?
我有DOM是这样的:
<a href='javascript:void(0)' id='link1'>Element with events bound initially</a>
<a href='javascript:void(0)' id='link2'>Element to which events are bound in future</a>
Run Code Online (Sandbox Code Playgroud)
这个javascript:
$(function(){
$('#link1').bind('click',function(){alert('do something to make me happy');})
});
Run Code Online (Sandbox Code Playgroud)
现在将来有一段时间我想将link1上绑定的所有事件复制到link2.我这样做如下所示,如果可能或可用,请建议一些更好的方法.
var _elmEvents = $(#link1).data('events');
if (_elmEvents) {
$.each(_elmEvents, function (event, handlers) {
$.each(handlers, function (j, handler) {
$('#link2').bind(event, handler);
});
});
}
Run Code Online (Sandbox Code Playgroud) 我已将以下样式应用于该pre元素:
pre {
background-color: #FFFFCC;
border: 2px dashed #FF6666;
padding-top: 7px;
padding-bottom: 8px;
padding-left: 10px;
float: none;
padding-right: 10px;
margin: 10px;
}Run Code Online (Sandbox Code Playgroud)
文本溢出框。当我应用该float:right属性时,盒子的行为符合预期,但在大屏幕中,其余部分自然地漂浮在盒子周围。不开心。EDIT2:我用float+clear做到了(但对于ie6)。我已经发布了关于新错误的另一个问题
我是 CSS 和 HTML 新手 - 我确信有一个简单的解决方案。请帮忙。:(
编辑:更接近标记:
pre {
background-color: #FFFFCC;
border: 2px dashed #FF6666;
padding-top: 7px;
padding-bottom: 8px;
padding-left: 10px;
padding-right: 10px;
margin: 10px;
white-space: pre-wrap;
}Run Code Online (Sandbox Code Playgroud)
这个在 ie6 中完全按照我想要的方式显示 - 在 ff 3.5 中文本换行 - 我知道这应该是这样 - 但我怎样才能将 ie 行为传递给 ff ?
带有样式的预标记的图像white-space: pre;
ie6:https://i1032.photobucket.com/albums/a406/dardanov/ie6pre.jpg

FF …
可能重复:
在C++中过度使用此代码气味
多年前,我养成了在访问成员变量时使用this->的习惯.我知道这不是绝对必要的,但我认为它更清楚.
然后,在某些时候,我开始更喜欢更简约的风格,并停止了这种做法......
最近我被一个更年轻的同龄人问到我是否认为这是一个好主意而且我发现我对自己的偏好没有真正的答案...这真的是一个完全风格的选择还是有真正的原因为什么不在成员变量访问前加上this->更好?
我正在寻找一种算法来在每个时期更改它的密钥,并且仍然可以被破译.
基本上我正在寻找一种方法来维护移动客户端和固定服务器之间的安全链接,使得即使您截获哈希甚至身份验证凭证本身,它们也会在每个时段都在双方都发生变化.
对任何人都响铃吗?
是否有更好的方法来确保即使您将以某种方式拦截身份验证凭据,它只对某个用户的某个请求有效?
我想尽可能快地和频繁地在silverlight或wpf(大约1000-10000)内渲染很多圆圈或小图形.如果我必须转到DX或OGL,那很好,但我想知道在这两个框架中的任何一个中首先执行此操作(读取:如果答案仅限WPF或仅限Silverlight,则可以.)此外,如果有办法通过WPF访问DX并在表面上渲染,我也会对此感兴趣.
那么,绘制大量圆圈的最快方法是什么?它们可以尽可能简单,但它们确实需要半径.目前我正在为每个圆使用DrawingVisual和DrawingContext.DrawEllipse()命令,然后将视觉渲染到RenderTargetBItmap,但随着圆圈数量的增加它变得非常慢.
顺便说一句,这些圈子每一帧移动,所以除非你打算建议缓存各个圈子,否则缓存不是一个真正的选择...但它们的尺寸是动态的,所以我不确定这是一个很好的方法.
当我退出Emacs时,我有一个关于如何"优雅地退出SLIME"的问题.这是我的配置文件的相关部分:
;; SLIME configuration
(setq inferior-lisp-program "/usr/local/bin/sbcl")
(add-to-list 'load-path "~/Scripts/slime/")
(require 'slime)
(slime-setup)
;; configure SLIME to gracefully quit when emacs
;; terminates
(defun slime-smart-quit ()
(interactive)
(when (slime-connected-p)
(if (equal (slime-machine-instance) "Gregory-Gelfonds-MacBook-Pro.local")
(slime-quit-lisp)
(slime-disconnect)))
(slime-kill-all-buffers))
(add-hook 'kill-emacs-hook 'slime-smart-quit)
Run Code Online (Sandbox Code Playgroud)
据我所知,每当我退出Emacs时,这应该会自动杀死SLIME及其关联的进程.但是,每次我退出时,我仍然得到提示:
Proc Status Buffer Command
---- ------ ------ -------
SLIME Lisp open *cl-connection* (network stream connection to 127.0.0.1)
inferior-lisp run *inferior-lisp* /usr/local/bin/sbcl
Active processes exist; kill them and exit anyway? (yes or no)
Run Code Online (Sandbox Code Playgroud)
有人可以从我的配置中找到我缺少的东西吗?
提前致谢.
我正在开发一个Web应用程序.通常在请求开始时(通过体系结构代码),打开Hibernate会话以处理数据库事务.在请求结束时,会话将关闭.这适用于我们的所有事务,除了在一个特定实例中,我想从请求中触发一个线程.该线程将调用DB事务.
从线程中,我调用"sessionFactory.openSession()",并在此会话中执行我的事务.问题出现在请求完成时,线程本身可能不一定完成.因此,当请求完成并且线程尝试执行另一个DB事务时,我得到一个Hibernate会话已关闭!错误.
无论如何,从我的线程,我可以打开一个"干净"的会话,与请求开始时打开的会话无关?