小编Mad*_*iha的帖子

改进代码的指南

您遵循哪些指导原则来提高代码的一般质量?许多人都有关于如何编写C++代码的规则,这些代码可能会使错误变得更加困难.我见过人们坚持认为每个if语句后跟一个大括号块({...}).

我对其他人遵循的指导方针及其背后的原因感兴趣.我也对您认为是垃圾的指导方针感兴趣,但通常都是这样.有人可以推荐一些吗?

为了让球滚动,我将提到一些开始:

  • 在每个if/ else语句之后总是使用大括号(如上所述).这背后的基本原理是,判断单个语句实际上是一个语句,还是扩展为多个语句的预处理器宏并不总是很容易,因此这段代码会破坏:
    // top of file:
    #define statement doSomething(); doSomethingElse

    // in implementation:
    if (somecondition)
        doSomething();

但如果你使用大括号,那么它将按预期工作.

  • 仅使用预处理器宏进行条件编译.预处理器宏可能导致各种地狱,因为它们不允许C++作用域规则.由于预处理器宏在头文件中具有通用名称,因此我多次搁浅.如果你不小心,你可能会造成各种各样的破坏!

现在告诉你.

c++ coding-style

10
推荐指数
5
解决办法
1616
查看次数

给定网格的填字游戏算法

在我写一些关于这个问题的文章之前,我需要告诉你:

  1. 这个问题是我的功课(我有大约1个星期的时间返回工作程序)
  2. 我每天都在研究这个问题大约一个星期,试图弄清楚我自己的解决方案
  3. 我不是要求完整的程序; 我需要一个关于算法的一般概念

问题:

给定:单词列表和"网格",例如:

网格(X表示任何字母):

X X 
XXXX
X X
XXXX
Run Code Online (Sandbox Code Playgroud)

词汇表:

ccaa
baca
baaa
bbbb
Run Code Online (Sandbox Code Playgroud)

你必须找到示例"解决方案" - 是否可以将wordlist中的单词装入给定的网格?如果至少有一个解决方案,请打印一个(无论哪个正确).如果没有 - 打印消息,那就没有可能的解决方案.举个例子,有一个解决方案:

b c 
baca
b a 
baaa
Run Code Online (Sandbox Code Playgroud)

我很难写出我已经尝试过的所有内容(因为英语不是我的母语,我也有很多错误想法的论文).

我的天真算法的工作原理如下:

  1. 第一个词需要适当的长度,所以找到任何(第一个?)单词长度合适(我将使用给定的示例网格和单词列表来演示我的想法):

    c X 
    cXXX
    a X
    aXXX
    
    Run Code Online (Sandbox Code Playgroud)
  2. 对于第一个普通字母(在2个字的交叉处)找到适合网格的任何(第一个)字(因此,在适当的位置上具有适当的长度和公共字母).如果没有这样的单词,请返回(1)并取另一个单词.在原始示例中,没有以"c"开头的单词,因此我们返回到(1)并选择下一个单词(此步骤重复几次,直到我们对第一个单词有"bbbb").现在我们有:

    b X 
    bXXX
    b X
    bXXX
    
    Run Code Online (Sandbox Code Playgroud)

    我们正在寻找一个以"b"开头的单词,例如:

    b X 
    baca
    b X
    bXXX
    
    Run Code Online (Sandbox Code Playgroud)
  3. 一般过程:尝试找到适合给定网格的单词对.如果没有这样的话,请回到上一步并使用另一种组合 - 如果没有这样的话 - 没有解决办法.

上面的一切都是混乱的,我希望你至少能理解问题的描述.我写了一个算法草案,但我不确定它是否有效以及如何正确编码(在我的例子中:c ++).此外,有些情况(即使在上面的例子中)我们需要找到一个依赖于2个或更多其他单词的单词.

也许我只是看不到明显的东西,也许我太傻了,也许......好吧,我真的试图解决这个问题.我不太了解英语,无法准确描述我对这个问题的看法,所以我不能把所有的笔记放在这里(我试图描述一个想法而且很难).信不信由你,我花了很长时间试图找出解决方案,而我几乎什么都没有......

如果你能描述一个解决方案,或者提示如何解决这个问题,我会非常感激.

algorithm crossword

10
推荐指数
1
解决办法
2万
查看次数

如何从一组URL中添加图像列表到文档?

假设我有一个包含图像源URL的数组,例如:

var imgs = ['http://lorempizza.com/380/240', 
            'http://dummyimage.com/250/ffffff/000000', 
            'http://lorempixel.com/g/400/200/', 
            'http://lorempixel.com/g/400/200/sports/'];
Run Code Online (Sandbox Code Playgroud)

如何抓取所有这些图像并将其插入我在特定位置的页面?说...

<div id="imageContainer"></div>
Run Code Online (Sandbox Code Playgroud)

html javascript

10
推荐指数
2
解决办法
8952
查看次数

CSS边界汇点

我希望有人可以帮我解决一个CSS问题...

我使用listview来显示一些结果,需要有一个分组的概念,为了实现这一点,我使用2组背景颜色交替.我正在尝试为这些元素添加边框,但由于边框顶部和边框左边可能是不同的颜色,有没有办法删除它们相遇的三角形?

 <!DOCTYPE html>
 <html>
 <head>
 <style type="text/css">
 p
 {
 border-top:10px solid red;
 border-left:10px solid white;
 border-bottom-style:dotted;
 border-left-style:solid;
 }
 </style>
 </head>

 <body>
 <p>2 different border styles.</p>
 </body>
 </html>
Run Code Online (Sandbox Code Playgroud)

css border

9
推荐指数
1
解决办法
2514
查看次数

尝试使用配置XML文件运行PHPUnit会导致异常

我正在尝试(很长一段时间,在PHP聊天室的fellas的帮助下)成功地将PHPUnit与PhpStorm集成.

我已将phpunit.xml文件设置如下:

<?xml version="1.0" encoding="UTF-8"?>
<phpunit
        backupGlobals               = "false"
        backupStaticAttributes      = "false"
        colors                      = "true"
        convertErrorsToExceptions   = "true"
        convertNoticesToExceptions  = "true"
        convertWarningsToExceptions = "true"
        processIsolation            = "false"
        stopOnFailure               = "false"
        syntaxCheck                 = "false"
        bootstrap                   = "bootstrap.php" >

    <testsuites>
        <testsuite name="Lamed Test Suite">
            <directory>Custom/*</directory>
        </testsuite>
    </testsuites>

</phpunit>
Run Code Online (Sandbox Code Playgroud)

并成功配置PHP风暴以从该文件中读取.

问题是,我在运行测试时在PhpStorm的控制台中收到以下错误:

D:\Websites\php\php.exe C:\fakepath\ide-phpunit.php --bootstrap D:\Websites\htdocs\lamed\tests\boostrap.php --configuration D:\Websites\htdocs\lamed\tests\phpunit.xml
Testing started at 23:51 ...

Fatal error: Uncaught exception 'PHPUnit_Framework_Exception' with message 'Neither "Lamed Test Suite.php" nor "Lamed Test Suite.php" could be opened.' in …
Run Code Online (Sandbox Code Playgroud)

integration phpunit phpstorm

9
推荐指数
1
解决办法
1万
查看次数

单击滚动条时,Chrome悬停状态将被取消

我有以下(示例)HTML:

<div id="target">
  Hover me!
  <div id="magic">
    Significant amounts of HTML, enough to cause scroll
    Excluding to keep the post concise
  </div>
</div>
Run Code Online (Sandbox Code Playgroud)

以下(示例)CSS:

#magic {
  display: none;
  width: 500px;
  height: 500px;
  overflow: auto;
}
#target:hover #magic {
  display: block;
}
Run Code Online (Sandbox Code Playgroud)

您可以在这里查看示例:https://jsfiddle.net/hak8zuok/1/

重现步骤:

  1. 将鼠标悬停在"悬停我!"上 文本打开魔法面板
  2. 快速单击滚动条几次

预期行为:

  • 无论您点击多少次或多少次,都不应忽略悬停

实际行为:

  • 很多时候,悬停被解雇,悬停面板关闭.

我已经设法在Chrome for Windows上重现这一点.它不能在Mac或Firefox上重现.这让我相信这是Chrome中的一个实际错误.

我想知道是否有一种可以防止悬停被关闭的解决方法.

html css google-chrome

9
推荐指数
1
解决办法
315
查看次数

关于工厂模式的神话

这让我困扰了一段时间,如果这是一个神话,我没有任何线索.

似乎工厂模式可以减轻为类添加依赖项的痛苦.

例如,在一本书中,它有类似的东西

假设您有一个名为Order的类.最初它并不依赖于任何东西.因此,您不必费心使用工厂来创建Order对象,而您只是使用plain new来实例化对象.但是,您现在要求必须与客户关联创建订单.您需要更改百万个位置才能添加此额外参数.如果您只为Order类定义了一个工厂,那么您可以在没有同样痛苦的情况下满足新要求.

这与为构造函数添加额外参数有何不同?我的意思是你仍然需要为工厂提供一个额外的论据,而且还有百万个地方使用,对吗?

factory-pattern

8
推荐指数
1
解决办法
473
查看次数

Webkit HTML通知中的表单?

是否可以在Webkit HTML桌面通知中使用表单元素?我尝试从Chrome扩展程序中打开HTML通知,<input>我添加了,但我无法输入.我希望能够捕获它的输入并保存它.

var notification = webkitNotifications.createHTMLNotification(chrome.extension.getURL('input-prompt.html'));
notification.show();

<html>
<body>
<form><input type="text" name="here" value="test" /></form>
</body>
</html>
Run Code Online (Sandbox Code Playgroud)

forms notifications google-chrome google-chrome-extension

8
推荐指数
1
解决办法
1063
查看次数

PHP的uniqid()可能会返回哪些可能的字符?

函数uniqid()可能包含哪些可能的字符?据我所知,这只是字母数字字符,但需要您确认.那是这样的吗?

PS在文档http://php.net/manual/en/function.uniqid.php中,我没有看到有关此信息

php

8
推荐指数
1
解决办法
894
查看次数

Fedex API计划pickkup

我正在开发一个Web插件.

我有一个联邦快递API $key,$userid,$password$meter

我的插件目标:

  • 我有一个网站,用户将在其注册并在其帐户中添加FedEx帐号(我的网站用户帐户部分)
  • 当用户添加他自己的FedEx帐号时,他就可以代表他的FedEx帐号创建FedEx日程安排.(每个用户的FedEx帐号将不同 - 2)

我的问题:

  • 我们可以用FedEx开发这种类型的功能吗?
  • 我们能否用不同的-2 FedEx帐号创建日程安排
  • 我的开发人员$key,$userid,$password$meter将是同为每个用户或我们需要不同-2开发$key,$userid,$password$meter每一个FedEx帐号.

请为我建议解决方案或分享一些链接和文件.

php api fedex

8
推荐指数
1
解决办法
1170
查看次数