问题列表 - 第40460页

试图将映射应用于Haskell中函数的"内部"参数

让我们定义一个任意函数

someFunc a b = ...
Run Code Online (Sandbox Code Playgroud)

如果我需要它,我知道我可以做类似的事情

map (someFunc a) [b0, b1, b2, ..., bn]
Run Code Online (Sandbox Code Playgroud)

我会得到结果

[(someFunc a b0), (someFunc a b1), ..., (someFunc a bn)]
Run Code Online (Sandbox Code Playgroud)

这里没有什么新东西.但是,如果不是使用地图的第二个参数来改变b,我想改变a(一个"内部"参数)?

map (someFunc ? b) [?0, ?1, ?2, ..., ?n]
Run Code Online (Sandbox Code Playgroud)

在Haskell有什么办法可以做到这一点吗?如果没有,那么解决这个问题的方法是什么?

我知道我可能不太清楚我发布的内容.如果需要,我可以尝试重新构建我的问题:(

haskell functional-programming

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

如何封装第三方JavaScript文件,以使它们不会污染全局范围?

我的一位客户询问他们是否可以添加一些JavaScript来跟踪用户对其网站的行为。乍一看,我担心它会干扰网站上的其他第三方分析脚本,因为看起来双方都使用了相同的JavaScript压缩器。我不想梳理并搜索所有可能的命名冲突。。。

有没有一种方法可以包含第三方脚本(位于单独域中的脚本文件),但将它们包装在其自己的名称空间中或提供它们自己的作用域,以免与其他全局声明的变量和函数冲突?

javascript

5
推荐指数
2
解决办法
1810
查看次数

如何在qt中设置小部件的绝对位置

我正在使用QT开发一个丰富的UI应用程序.

  1. 我需要将小部件放在绝对位置
  2. 我应该能够将小部件放在后台/前景中以添加一些效果.

简单的例子是,我必须在进料罐内显示一个带有水位的锅炉.

  1. 拍摄饲料罐图像并嵌入标签中.
  2. 将进度条放在给水箱的中心以显示水位.

现在,在这种情况下,进度条将位于前景中,标签位于背景中.

问候,

qt widget

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

有哪些不同的gettext文件格式?

我开始尝试使用gettext在C程序中翻译一些最常用的文本条目,但是当我深入研究这个时,我对所有不同的文件格式有点困惑,因为在功能上似乎有些重叠?

我想概述一下不同的格式

  • .po
  • .pot
  • .mo
  • .gmo
  • (我排除的其他格式?)

并学习

  • 什么是正常的工作流程?
  • 这个文件格式包含什么?
  • 通常使用哪些工具?
  • 什么"相反"的方向转换是可能的(1)?

(1)我知道msgunfmt可以从.mo转换为.po,但由于.mo是最终结束格式,我认为这不是一个无损的过程.即如果我从hello1.mo转换为hello2.po然后从hello2.po转换为hello3.mo,我假设hello1.mo和hello3.mo将包含相同的语言字符串但是一些元信息将会丢失, 对?

gettext

12
推荐指数
1
解决办法
1096
查看次数

如何构建C#WinForms模型 - 视图 - 演示者(被动视图)程序?

我正在设计一个具有以下基本概念的GUI(类似于Visual Studio的基本外观):

  1. 文件导航
  2. 控制选择器(用于选择要在编辑器组件中显示的内容)
  3. 编辑
  4. 记录器(错误,警告,确认等)

现在,我将使用TreeView进行文件导航,使用ListView选择要在编辑器中显示的控件,使用RichTextBox进行Logger.编辑器将具有两种类型的编辑模式,具体取决于TreeView中选择的内容.编辑器将是一个RichTextBox,用于手动编辑文件内的文本,或者它将是一个带有拖放DataGridViews和子文本框的面板,用于在此面板中进行编辑.

我试图遵循被动视图设计模式,将模型与视图完全分离,反之亦然.这个项目的本质是我添加的任何组件都需要编辑/删除.因此,我需要从给定控件到下一个控件的独立性.如果今天我使用TreeView进行文件导航,但明天我被告知要使用其他东西,那么我想要相对容易地实现一个新的控件.

我根本不明白如何构建程序.我理解每个Control的一个Presenter,但我不知道如何使它工作,以便我有一个View(程序的整个GUI)和控件(子视图),这样整个视图是可替换的以及个人反映我的模型的控件.

在主视图中,Passive View标准应该是轻量级的,我是否单独实现子视图?如果是这样,请说我有一个接口INavigator来抽象导航器对象的角色.导航器需要Presenter和Model才能在Navigator View和主View之间进行操作.我觉得我迷失在某个地方的设计模式行话中.

可以在这里找到最相似的相关问题,但它没有足够详细地回答我的问题.

有人请帮我理解如何"构建"这个程序吗?我感谢任何帮助.

谢谢,

丹尼尔

c# mvp design-patterns passive-view winforms

7
推荐指数
1
解决办法
8159
查看次数

`long`保证至少为32位?

通过阅读C++标准,我一直都知道C++中的整数基本类型的大小如下:

sizeof(char) <= sizeof(short int) <= sizeof(int) <= sizeof(long int)
Run Code Online (Sandbox Code Playgroud)

我从3.9.1/2中推断出这个:

  1. 有四种带符号的整数类型:"signed char","short int","int"和"long int".在此列表中,每种类型至少提供与列表中前面的存储一样多的存储空间.简单的int具有执行环境的体系结构所建议的自然大小

此外,大小char由3.9.1 /描述为:

  1. [...]大到足以存储实现的基本字符集的任何成员.

1.7/1以更具体的术语定义:

  1. C++内存模型中的基本存储单元是字节.一个字节至少足以包含基本执行字符集的任何成员,并且由连续的位序列组成,其数量是实现定义的.

这导致我得出以下结论:

1 == sizeof(char) <= sizeof(short int) <= sizeof(int) <= sizeof(long int)
Run Code Online (Sandbox Code Playgroud)

where sizeof告诉我们这个类型的字节数.此外,它是实现定义的字节中有多少位.我们大多数人可能习惯于处理8位字节,但标准表示n字节中有位.


这篇文章中,Alf P. Steinbach说:

long保证(至少)32位.

根据标准,这一切都在我理解C++基本类型的大小面前.通常情况下,我只是将这句话视为初学者错误,但由于这是Alf,我认为值得进一步调查.

那么,你呢?标准长期保证至少为32位?如果是这样,请具体说明如何进行此保证.我只是没有看到它.

  1. C++标准特别指出,为了了解C++,你必须知道C(1.2/1)1

  2. C++标准隐含地定义了long可容纳的值的最小限制LONG_MIN- LONG_MAX 2

所以无论多大long,它都必须足够大才能将LONG_MIN保持为LONG_MAX.

但Alf和其他人特别指出,long必须至少为32位.这就是我想要建立的.C++标准明确指出一个字节中的位数没有指定(可能是4,8,16,42)那么连接如何能够容纳数字LONG_MIN-LONG_MAX至少为32位?


(1)1.2/1:以下参考文件对于本文件的应用是必不可少的.凡是注日期的引用文件,仅引用的版本适用.凡是不注日期的引用文件,其最新版本(包括所有的修改单)适用于本标准.

  • ISO/IEC 2382(所有部分),信息技术 - 词汇
  • ISO/IEC 9899:1999,编程语言 - C.
  • ISO/IEC 10646-1:2000,信息技术 - 通用多八位字节编码字符集(UCS) - 第1部分:体系结构和基本多语言平面

(2)定义 …

c++ standards language-lawyer long-integer

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

PHP:按值对对象数组进行分组的函数

我正在使用多维数组.如何按值删除重复项?在以下数组中,[0],[2]和[5]具有相同的[ID].是否有一个函数可以根据特定值删除任何重复的数组?在这种情况下,我想删除array [2]和array [5],因为它们与array [0]具有相同的[ID].

感谢您提供的任何信息.

        Array
(
    [0] => stdClass Object
        (
            [d] => 2010-10-18 03:30:04
            [ID] => 9
        )

    [1] => stdClass Object
        (
            [d] => 2010-10-18 03:30:20
            [ID] => 4
        )

    [2] => stdClass Object
        (
            [d] => 2010-11-03 16:46:34
            [ID] => 9
        )

    [3] => stdClass Object
        (
            [d] => 2010-11-02 03:19:14
            [ID] => 1
        )

    [4] => stdClass Object
        (
            [d] => 2010-05-12 04:57:34
            [ID] => 2
        )    

    [5] => stdClass Object
        (
            [d] => 2010-05-10 …
Run Code Online (Sandbox Code Playgroud)

php unique

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

使用cookie进行简单的PHP登录

我已经开始开发这个非常简单的PHP登录,要求输入密码才能访问网站.它还会创建一个cookie,以便在用户关闭浏览器窗口之前继续访问.

在每个页面的顶部,我检查cookie:

<?php

    if(!isset($_COOKIE['authorised']) || ($_COOKIE['authorised'] != 'true'))
    {
        include('login.php'); exit;
    }

?>
Run Code Online (Sandbox Code Playgroud)

如果没有,那么我退出并显示登录表单:

<?php

    function pageURL()
    {
        $pageURL = 'http';
        if ($_SERVER["HTTPS"] == "on")
        {
            $pageURL .= "s";
        }
        $pageURL .= "://";
        if ($_SERVER["SERVER_PORT"] != "80")
        {
            $pageURL .= $_SERVER["SERVER_NAME"].":".$_SERVER["SERVER_PORT"].$_SERVER["REQUEST_URI"];
        } 
        else
        {
            $pageURL .= $_SERVER["SERVER_NAME"].$_SERVER["REQUEST_URI"];
        }
        return $pageURL;
    }

    $pageRedirect = pageURL();

    if(isset($_POST['password']) && ($_POST['password'] == 'qwe123'))
    {
        setcookie('authorised', 'true'); header("Location:$pageRedirect",303);
    }
    else
    {
        include('noaccess.php'); exit;
    }

?>
<form action="<?php echo pageURL(); ?>" method="post">
<input type="password" name="password" /> …
Run Code Online (Sandbox Code Playgroud)

php

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

Rails 3 app,如何获得GIT版本和更新网站?

我正在使用capistrano部署我的rails 3应用程序,我想得到git版本(和日期信息)并用此更新我的网站页脚.

我怎样才能做到这一点?

git capistrano ruby-on-rails

9
推荐指数
2
解决办法
2416
查看次数

如果不发生争用,则在读取时需要同步

考虑下面的代码狙击:

package sync;

public class LockQuestion {
    private String mutable;

    public synchronized void setMutable(String mutable) {
        this.mutable = mutable;
    }

    public String getMutable() {
        return mutable;
    }   
}
Run Code Online (Sandbox Code Playgroud)

在Time1线程Thread1将更新'mutable'变量.在setter中需要同步,以便将内存从本地缓存刷新到主内存.在时间Time2(Time2> Time1,没有线程争用)线程Thread2将读取mutable的值.

问题是 - 我需要在getter之前进行同步吗?看起来这不会导致任何问题 - 内存应该是最新的,Thread2的本地缓存内存应该由Thread1无效和更新,但我不确定.

java concurrency multithreading locking concurrent-programming

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