我在Lua中有一个字符串,想要在其中迭代单个字符.但是没有我尝试过的代码和官方手册只显示如何查找和替换子串:(
str = "abcd"
for char in str do -- error
print( char )
end
for i = 1, str:len() do
print( str[ i ] ) -- nil
end
Run Code Online (Sandbox Code Playgroud) 从代码调用Web资源时的常见任务是构建查询字符串以包含所有必需参数.虽然无论如何都没有火箭科学,但是你需要注意一些漂亮的细节,&如果不是第一个参数,编码参数等.
这样做的代码非常简单,但有点单调乏味:
StringBuilder SB = new StringBuilder();
if (NeedsToAddParameter A)
{
SB.Append("A="); SB.Append(HttpUtility.UrlEncode("TheValueOfA"));
}
if (NeedsToAddParameter B)
{
if (SB.Length>0) SB.Append("&");
SB.Append("B="); SB.Append(HttpUtility.UrlEncode("TheValueOfB")); }
}
Run Code Online (Sandbox Code Playgroud)
这是一个常见的任务,人们期望实用程序类存在,使其更加优雅和可读.扫描MSDN,我找不到一个 - 这让我想到了以下问题:
你知道做上述事情最干净的方式是什么?
我有一个C#WebService应用程序,我想在其中捕获从应用程序抛出的所有未处理的异常.
我怎样才能做到这一点?
我有Table1,我需要让它看起来像Table2:
VisitingCount | Date
-----------------------
1 | 15:09
3 | 15:10
7 | 15:15
1 | 15:39
2 | 15:40
3 | 15:47
Run Code Online (Sandbox Code Playgroud)
VisitingCount | Date
-----------------------------
11 | 15:00-15:30
6 | 15:30-16:00
Run Code Online (Sandbox Code Playgroud)
我写了一个sql用户定义的函数,如下所示:
create FUNCTION [dbo].[fn_GetActivityLogsArranger] (@time AS nvarchar(max))
RETURNS nvarchar(max)
AS
BEGIN
declare @Return varchar(30)
select @Return =
case
when @time between '15:00' and '15:30' then '15:00-15:30'
when @time between '15:30' and '16:00' then '15:30-16:00'
when @time between '16:00' and '16:30' then '16:00-16:30'
when @time between …Run Code Online (Sandbox Code Playgroud) 我之前对装饰器模式的理解是你继承Window了WindowDecorator,然后在重写的方法中,在调用Window所述方法的实现之前做了一些额外的工作.类似于以下内容:
public class Window
{
public virtual void Open()
{
// Open the window
}
}
public class LockableWindow : Window // Decorator
{
public virtual void Open()
{
// Unlock the window
base.Open();
}
}
Run Code Online (Sandbox Code Playgroud)
然而,这基本上是对装饰进行硬编码,那么如何使用合成而不是继承来重构呢?
我使用宏来编码这样的展开循环:(愚蠢的例子)
#define foreach_small_prime(p, instr) { \
int p; \
p = 2; instr; \
p = 3; instr; \
p = 5; instr; \
p = 7; instr; \
}
foreach_small_prime(pp, cout << pp);
int sum = 0;
foreach_small_prime(pp, {
sum += pp;
if (sum >= 10) cout << sum << endl;
});
Run Code Online (Sandbox Code Playgroud)
但在某些情况下,我可能会用于构造:
#define foreach_small_even(ii) for(int ii = 0; ii < 20; ii += 2)
int sum = 0;
foreach_small_even(pp) {
sum += pp;
if (sum >= 10) cout …Run Code Online (Sandbox Code Playgroud) 我已经阅读了几个关于实现php缓存系统的指南(我的网站是自定义编码的,相当严重的查询和不断增长),包括以下内容:http://www.snipe.net/2009/03/quick-and-dirty-php -caching /
我完全理解它们,但页面的某些部分我无法缓存,最好的方法是什么?
c# ×3
.net ×1
c++ ×1
caching ×1
capture ×1
cocoa-touch ×1
composition ×1
decorator ×1
eclipse ×1
exception ×1
for-loop ×1
html ×1
jquery ×1
lua ×1
macros ×1
memory-leaks ×1
objective-c ×1
php ×1
query-string ×1
rcp ×1
sql ×1
sql-server ×1
uikit ×1
url ×1