问题列表 - 第39969页

为什么C++ std :: exception ::是什么成员const?

我很好奇std::exception::what成员函数为什么const

class exception 
{
public:
  exception() throw() { }
  virtual ~exception() throw();

  /** Returns a C-style character string describing the general cause
   *  of the current error.  */
  virtual const char* what() const throw();
};
Run Code Online (Sandbox Code Playgroud)

c++ gcc const exception

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

Haskell中的Y Combinator

是否可以在Haskell中编写Y Combinator

看起来它会有一个无限递归的类型.

 Y :: f -> b -> c
 where f :: (f -> b -> c)
Run Code Online (Sandbox Code Playgroud)

或者其他的东西.甚至是一个简单的因子因素

factMaker _ 0 = 1
factMaker fn n = n * ((fn fn) (n -1)

{- to be called as
(factMaker factMaker) 5
-}
Run Code Online (Sandbox Code Playgroud)

失败的"发生检查:无法构造无限类型:t = t - > t2 - > t1"

(Y组合器看起来像这样

(define Y
    (lambda (X)
      ((lambda (procedure)
         (X (lambda (arg) ((procedure procedure) arg))))
       (lambda (procedure)
         (X (lambda (arg) ((procedure procedure) arg)))))))
Run Code Online (Sandbox Code Playgroud)

在计划中)或者,更简洁

(? (f) ((? (x) …
Run Code Online (Sandbox Code Playgroud)

haskell y-combinator

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

我应该在哪里存储应用程序特定设置

我被要求更新过去6年一直在WinXP上运行的VB6应用程序.客户端想要使用Windows 7.到目前为止,应用程序将其设置存储在位于应用程序目录中的INI文件中.XP和7之间的一个关键区别是你不能再写C:\Program Files\AppFolder了.

我试图找出文件系统应该存储设置的位置?鉴于应用程序仍然需要在WinXP上运行,我有点困惑.

在WinXP上,我有以下内容:

C:\Documents and Settings\profilename\Application Data
C:\Documents and Settings\profilename\Local Settings\Application Data
Run Code Online (Sandbox Code Playgroud)

在Windows 7上,我有以下内容:

C:\Users\profilename\AppData\Local
C:\Users\profilename\AppData\LocalLow
C:\Users\profilename\AppData\Roaming
Run Code Online (Sandbox Code Playgroud)

这些文件夹中的每一个都有子文件夹,似乎存储各种产品的设置/文件

那2个问题:

  1. 鉴于所有这些文件夹,我在哪里存储我的设置?
  2. 我假设有一个漂亮的Windows API调用,它会给我这个文件夹的正确位置.我希望它适用于XP和7.我的假设是否正确?如果是这样,将非常感谢链接.

vb6 settings windows-xp windows-7

14
推荐指数
2
解决办法
6235
查看次数

如何使用FILETIME/SYSTEMTIME或boost在C++中使用Win32设置文件的上次访问时间?

我有一些代码根据与上次访问日期的time_t比较删除一些文件,并且正在寻找如何编写SetLastAccessTime方法以在我的单元测试中使用.

这是我的获取:

bool GetLastAccessTime(const std::string &filename, time_t& lastAccessTime)
{
    WIN32_FIND_DATA FindFileData;
    HANDLE hFind;

    hFind = FindFirstFile(filename.c_str(), &FindFileData);

    if (hFind == INVALID_HANDLE_VALUE) 
        return false;

    FILETIME fTime = FindFileData.ftLastAccessTime;
    FindClose(hFind);

    SYSTEMTIME sTime;
    FileTimeToSystemTime(&fTime, &sTime);

    struct tm tmTime;
    tmTime.tm_hour = sTime.wHour;
    tmTime.tm_min = sTime.wMinute;
    tmTime.tm_mday = sTime.wDay;
    tmTime.tm_mon = sTime.wMonth;
    tmTime.tm_sec = sTime.wSecond;
    tmTime.tm_year = sTime.wYear - 1900;

    time_t t = mktime(&tmTime);

    lastAccessTime = t;
    return true;
}    
Run Code Online (Sandbox Code Playgroud)

我猜我是以某种方式做反向的?我甚至不确定我想要在哪里结束.

我宁愿做这样的事情:

boost::filesystem::path p(filename)
std::time_t t = boost::filesystem::last_access_time(p);
Run Code Online (Sandbox Code Playgroud)

但这似乎并不存在,从我能够找到的(虽然有一个last_write_time).如果还有另一种我忽略的boost :: filesystem技术,我当然对此持开放态度.

系统:Win32(XP),Boost库:1.44 v2,Dev env:Visual Studio …

c++ winapi boost

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

API调用以检查是否在模拟器wp7中运行

有没有一种方法我可以调用,看看我目前是在模拟器中运行而不是在实际的物理手机上运行?

当我在模拟器中时,我需要以不同的方式运行一些代码(我有一个模拟gps位置服务).

windows-phone-7

13
推荐指数
2
解决办法
2142
查看次数

比较Lisp中的列表

我可以想办法自己做一些事情,但我觉得有一个更简单,也许是内置的方法来做到这一点.我想看看是否有任何两个列表共享一个元素.这些是我目前正在处理的两个列表:

((0 1 2) (3 4 5) (6 7 8) (0 3 6) (1 3 7) (2 4 8) (0 4 8) (2 4 6))

((0 1 7) (0 1 6) (0 1 3) (0 3 7) (0 3 6) (0 6 7) (1 3 7) (1 3 6) (1 6 7) (3 6 7)) 
Run Code Online (Sandbox Code Playgroud)

由于两个列表都包含(1 3 7),我想比较要返回的列表T.

除了设置一对夫妇之外,还有更好的方法DOLIST吗?

lisp clisp common-lisp

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

我可以使用.NET Framework从指定的IP地址发送webrequest吗?

我有一个多IP地址的服务器.现在我需要使用http协议与多个服务器通信.每个服务器只接受来自我的服务器的指定IP地址的请求.但是在.NET中使用WebRequest(或HttpWebRequest)时,请求对象将自动选择IP地址.无论如何我都找不到用地址绑定请求.

反正有没有这样做?或者我必须自己实施webrequest课程?

.net c# webrequest ip-address

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

可逆散列函数?

我需要一个可逆的哈希函数(显然输入的大小要小于输出),它以一种随机的方式将输入映射到输出.基本上,我想要一种方法将像"123"这样的数字转换为更大的数字,如"9874362483910978",但不是以保留比较的方式,所以如果x1> x2,f(x1)则不能总是如此)> f(x2)(但也不一定总是假).

对此的用例是我需要找到一种方法将小数字转换为更大的,随机的数字.它们实际上并不需要是随机的(事实上,它们需要是确定性的,所以相同的输入总是映射到相同的输出),但它们确实需要看起来是随机的(至少当base64编码为字符串时,所以移位Z位将无法工作,因为类似的数字将具有类似的MSB).

此外,简单(快速)计算和反转是一个加号,但不是必需的.

我不知道我是否清楚,或者是否存在这样的算法,但我会感激任何帮助!

python hash

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

Rails思考Sphinx: - 如何只选择结果中的一些字段和多个表选择(关联)

我是Thinking Sphinx for Rails的新秀.

当Sphinx找到一条记录时,它会给出表中的所有字段.我如何只选择所需的字段?

在我的情况下,我还需要参考另一个表.我怎样才能做到这一点?

谢谢

select field ruby-on-rails thinking-sphinx

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

AJAX函数获取JSON数据

我制作了一个脚本,使用AJAX从我们服务器上的文件中获取JSON数据,但是我将它放入函数中时遇到了麻烦.

这是我的代码:

function getJSON (file)
    {
      var request = AjaxRequest();
      var json = "";
      request.onreadystatechange = function ()
      {
         if(request.readyState==4 && request.status==200)
            {
              json = JSON.parse(request.responseText);
            }
      }
      request.open("GET", file, false);
      request.send();
      return json;
     }
Run Code Online (Sandbox Code Playgroud)

该函数执行我想要的所有内容,但我被告知不要因为阻塞而将false传递给AJAX请求.这个功能似乎有些不对劲,但我不知道如何改变它.我应该改变吗?如果是这样,怎么样?

javascript ajax json

0
推荐指数
1
解决办法
3932
查看次数