小编Cha*_*les的帖子

Clojure开发人员常见的编程错误

Clojure开发人员犯了哪些常见错误,我们如何避免这些错误呢?

例如; Clojure的新人认为这个contains?功能的作用是一样的java.util.Collection#contains.但是,contains?只有在使用索引集合(如地图和集合)并且您正在寻找给定键时,它才会起作用:

(contains? {:a 1 :b 2} :b)
;=> true
(contains? {:a 1 :b 2} 2)
;=> false
(contains? #{:a 1 :b 2} :b)
;=> true
Run Code Online (Sandbox Code Playgroud)

与数字索引集合(向量,数组)一起使用时,contains? 检查给定元素是否在有效索引范围内(从零开始):

(contains? [1 2 3 4] 4)
;=> false
(contains? [1 2 3 4] 0)
;=> true
Run Code Online (Sandbox Code Playgroud)

如果给出一个列表,contains?将永远不会返回true.

clojure

92
推荐指数
7
解决办法
2万
查看次数

"argv [0] =可执行文件名称"是一个公认的标准还是只是一个共同的约定?

main()在C或C++应用程序中传递参数时,将argv[0]始终是可执行文件的名称?或者这只是一个常见的约定,并不保证100%的时间都是真的?

c c++ standards argv

92
推荐指数
5
解决办法
6万
查看次数

Firefox 5'缓存'301重定向

有没有办法禁用这个'功能'?

例如,如果对http://localhost/foo.html我已经指定为根地址的'301'的请求,所有后续foo.html完全绕过Web服务器的请求和ffox 5将检查它的缓存,请读取此URL是先前的"301"并且重定向甚至没有检查更改.

如果我已经停止foo.html了301',我必须清除firefox的缓存以便"修复"这种情况发生.

Chrome,IE和以前版本的Firefox不会这样做.

firefox

89
推荐指数
6
解决办法
4万
查看次数

MVC4样式包给403

捆绑时/缩小时启用,我的一些捆绑的似乎都在浏览器(用/结束)无效的URL和IIS提供了一个403 Forbidden错误,好像试图列出文件夹中的内容.

我的捆绑设置方式没有区别 - 它们不是.min.css,访问权限是正确的等等.

.net asp.net-mvc razor asp.net-mvc-4 bundling-and-minification

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

lock(new object()) - Cargo cult还是一些疯狂的"语言特例"?

我正在审查一些顾问编写的代码,虽然已经弹出了数十个红旗,但我无法围绕以下片段进行讨论:

private void foo()
{
    if (InvokeRequired)
    {
        lock (new object())
        {
            if (m_bar!= null)
                Invoke(new fooDelegate(foo), new object[] { });
        }
    }
    else
    {
        if(OnBazChanged != null)
            OnBazChanged();
    }
}
Run Code Online (Sandbox Code Playgroud)

什么是锁(新对象())在这做什么?应该没有任何影响,因为它始终锁定在另一个对象上,但这种锁定在整个代码中都是持久的,即使在非复制粘贴的部分也是如此.这是C#语言中的一些特殊情况,编译成我不知道的东西,还是程序员只是采用了一些恰好在前一段时间工作的货物崇拜?

c# locking thread-safety

86
推荐指数
2
解决办法
3912
查看次数

PopupWindow - 在外部点击时关闭

我的活动中有一个PopupWindow,即使我正在与我的活动交互(比如在我的列表上滚动),我的PopupWindow仍会显示.我可以滚动浏览我的列表,PopupWindow仍在那里.

我想要实现的是当我在不是PopupWindow的屏幕上触摸/滚动/点击/等时,我想要关闭PopupWindow.就像菜单的工作方式一样.如果您在菜单外单击,菜单将被取消.

我试过setOutsideTouchable(true)但它不会解雇窗口.谢谢.

android popupwindow android-menu

86
推荐指数
10
解决办法
8万
查看次数

在尝试提交应用时,Xcode给出了奇怪的报刊错误

最终一切正常,我想将我的第一个应用程序提交给Appstore.但是,当我在Xcode 4.1中单击提交时,我收到以下奇怪的错误消息:

要包含报亭功能,info.plist必须包含uinewsstandapp = true.

(确切相同,谷歌不知道任何事情).

但我不使用报摊,我不想使用.我的错误在哪里?

马库斯

Xcode版本4.1

xcode ios newsstand-kit

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

vim中的位置列表和quickfix列表有什么区别

以下内容来自有关quickfix列表和位置列表的文档.但我不确定究竟有什么不同.下图显示了位置列表和quickfix列表中的相同内容.我什么时候在vimgrep和lvimgrep中使用一个或另一个.

In Vim the quickfix commands are used more generally to find a list of positions 
in files.For example, |:vimgrep| finds pattern matches.  You can use the positions 
in a script with the |getqflist()| function. Thus you can do a lot more than the
edit/compile/fix cycle!
...
...

                         *location-list* *E776* 
A location list is similar to a quickfix list and contains a list of positions 
in files.  A location list is associated with a window and each window can have …
Run Code Online (Sandbox Code Playgroud)

vim

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

消息队列与消息总线 - 有什么区别?

还有吗?对我来说,MB知道订阅者和发布者,并充当调解者,通知订阅者新消息(实际上是"推送"模型).另一方面,MQ更像是一种"拉"模型,消费者将消息从队列中拉出来.

我完全偏离了这里吗?

message-queue message-bus

80
推荐指数
5
解决办法
5万
查看次数

"最后100个字节"采访场景

我前几天在接受采访时得到了这个问题,想知道一些最好的答案(我没有很好地回答哈哈):

场景:有一个网页正在监视通过某个网络发送的字节.每次发送一个字节时,都会调用recordByte()函数传递该字节,这可能每天发生数十万次.此页面上有一个按钮,按下时会显示传递给屏幕上的recordByte()的最后100个字节(它通过调用下面的print方法来完成).

以下代码是我给出的并要求填写的代码:

public class networkTraffic {
    public void recordByte(Byte b){
    }
    public String print() {
    }
}
Run Code Online (Sandbox Code Playgroud)

存储100个字节的最佳方法是什么?一个列表?好奇如何做到最好.

java algorithm

78
推荐指数
4
解决办法
5239
查看次数