大多数程序员都有调试/修复别人代码的经验.有时"别人的代码"是如此混淆,试图了解它正在做什么是不够的.
您必须调试/修复的最差(最混淆)代码是什么?
如果你没有扔掉它并从头开始重新编码,那你为什么不呢?
如果我有字符串:
"O João foi almoçar :) ."
Run Code Online (Sandbox Code Playgroud)
我如何最好将它分成python中的单词列表,如下所示:
['O','João', 'foi', 'almoçar', ':)']
Run Code Online (Sandbox Code Playgroud)
?
谢谢 :)
苏菲亚
我想知道如何将整数映射到颜色,但这样做是为了使序列对颜色没有太大影响(虽然它确实无关紧要),并且还要将相同的数字插入到反复使用的功能会产生相同的颜色.
它适用于JTable,并对表的行着色以突出显示具有相同ID的类似行.存储任何元数据意味着许多混乱和低效率,我想避免.
基本上,id f(x)->c for all x in the positive range of integers such that f(x)->c1, f(x+1)->c2, c1 !~ c2
在哪里x
,c
结果是颜色.我曾考虑过使用Random
,但这会根据生成数字的顺序而改变.如果没有添加顺序,那就没关系.
我忘了提一下,颜色应该是暗的,以便白色文字能够正确显示.
干杯,
克里斯
我有这个if-else
声明做我想要的.正如你应该能说的那样,它正在做的事情非常简单.
if (width != null && height != null)
{
if (top != null && left != null)
{
ret.type = VMLDimensionType.full;
}
else
{
ret.type = VMLDimensionType.size;
}
}
else
{
if (top != null && left != null)
{
ret.type = VMLDimensionType.positon;
}
else
{
ret.type = VMLDimensionType.unset;
}
}
Run Code Online (Sandbox Code Playgroud)
的enum
被称为是:
private enum VMLDimensionType
{
unset = 0,
full = 1,
size = 2,
position = 3
}
Run Code Online (Sandbox Code Playgroud)
它非常简单,我确信有更简洁,更易读的方式来表达这一点.
注意如果不是因为默认情况下VS强加的荒谬的"每条一条线"规则,我可能不会那么烦恼.例如在VB中,我可能会从此代码块中丢失大约10行!(关于那个的任何想法?)
c# refactoring code-readability code-snippets conditional-statements
while((MAP = inputFile.readLine()) != null) {
System.out.println(MAP);
}
Run Code Online (Sandbox Code Playgroud)
我们如何得知 while 循环执行的迭代次数?在这个文本文件中,它们有时可以是 5 行数据,或者 100 行数据。如果它们是 5 行,则 while 循环可能执行 6 次循环。我想要那个号码。
有什么建议么?
我的代码中存在一个嵌套字符串向量的问题.它不打印字符串.
void foo(vector<vector<char const *> > const & vcp){
vector<vector<char const *> >::const_iterator i(vcp.begin());
vector<vector<char const *> >::const_iterator e(vcp.end());
for(; i != e; ++i){
vector<char const *>::const_iterator ci(i->begin());
vector<char const *>::const_iterator ce(i->end());
for(; ci != ce; ++ci)
cout<<*ci<<endl; //Not printing
}
}
int main(){
std::vector<vector<char const *> > vvcp(3);
std::vector<char const *> vcp(3);
vcp.push_back(string("abcd").c_str());
vcp.push_back(string("efgh").c_str());
vcp.push_back(string("ijkl").c_str());
vvcp.push_back(vcp);
vvcp.push_back(vcp);
foo(vvcp);
return EXIT_SUCCESS;
}
Run Code Online (Sandbox Code Playgroud) 我试图使用addslashes和mysql_real_escape_string来清理我的PHP登录输入.使用addslashes
作品,但mysql_real_escape_string
不会.
以下是允许我正确登录的示例:
$user = addslashes($_POST['user']);<br/>
$password = addslashes($_POST['password']);
Run Code Online (Sandbox Code Playgroud)
这不会:
$user = mysql_real_escape_string($_POST['user']);<br/>
$password = mysql_real_escape_string($_POST['password']);
Run Code Online (Sandbox Code Playgroud)
此外,我的一些其他字段包含撇号.使用addslashes时不返回任何内容,因为数据库中的条目不会被转义.我想知道是否使用mysql_real_escape_string
可以解决这个问题,但我不知道如何.
有人知道一种方式,我怎么能知道加载的图像是不是图像,因为例如返回了404错误?
如果出现错误,我想将我的图片网址设置为例如白色图片.
我不能使用像404错误处理或servlet这样的服务器端技术,因为我想用Amazon S3提供我的图像,它没有错误处理或重定向到"默认文件",以防请求的图像不是找到.
如果你有这样的三元条件:
(sum(a,b) > sum(b,c) ? sum(a,b) : sum(b,c))
Run Code Online (Sandbox Code Playgroud)
以这种方式写它是否有效且干净?是sum(a,b)
或sum(b,c)
评估两次?我怎样才能改善这个?
java ×4
string ×2
algorithm ×1
apostrophe ×1
binary-tree ×1
c# ×1
c++ ×1
colors ×1
cstring ×1
debugging ×1
emoticons ×1
gwt ×1
javascript ×1
jtable ×1
mysql ×1
obfuscation ×1
php ×1
python ×1
random ×1
refactoring ×1
sanitization ×1
split ×1
swing ×1
vector ×1
while-loop ×1