问题列表 - 第12345页

如何在整数除法上停止抛出OverflowException?

我得到OverflowException异常的扔给我时,我不希望他们(或因此我认为).我正在执行一些奇怪的计算,我希望值溢出,丢弃溢出的位.看来我不能让这个工作正常.基本上这是一对i和j,当我迭代大集合(int.MinValue到int.MaxValue)时发生.

// i and j are ints
// i is -2147483648
// j is -1
var x = i / j;

// I also tried using unchecked keyword, but it doesn't help    
var x = unchecked(i / j);
Run Code Online (Sandbox Code Playgroud)

更新:

预期的数学值-2147483648/-1是2147483648.但是,这个特定的代码并没有真正尝试找到这个数字.这是一系列比特操纵事情的一部分,有点难以理解.说实话,我甚至不知道自己的目的是什么,因为我没有真正记录这个方法,而且只需要一天时间就可以在我脑海中引发严重的WTF泡沫.所有我知道它的工作原理与设计用于处理案例的特殊代码.

关于预期价值:

因为int只能保持2147483647的最大值,所以我希望丢弃溢出值Y值.

如果我对此有所了解,那么对于模糊方法来说,这可能是文档的重要性.

.net c# math overflowexception

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

如何防止链接器优化启动代码?

我有以下问题:我的(C++-)项目由多个子项目组成。在每个文件中,我都有几个文件,其中包含我想要在启动时运行的代码。到目前为止,我的解决方案是使用静态变量,它们在初始化时调用相应的代码,如下所示:

// Foo.cpp

static TFooRegistry sFooRegistry;   // does stuff in constructor.
Run Code Online (Sandbox Code Playgroud)

当为每个子项目使用 dll 构建我的项目时,一切正常并且代码按预期运行。然而,当静态链接子项目时,链接器确定 Foo.o 不包含从外部引用的代码,并将其优化掉。当然,我可以在其他地方添加对 sFooRegistry 的引用,但这很乏味且容易出错。

有哪些(符合标准的)方法可以解决这个问题?

好的,我可以在 mac/gcc 和 win/visual studio 上做什么?

c++ linker static-initialization

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

REST和URI缓存

据我所知,使用超文本驱动的 RESTful Web服务,客户端不应该知道有关服务器URI布局的任何信息,除了几个众所周知的入口点.这应该使服务器能够控制自己的URI空间并减少与客户端的耦合.

当服务的客户端发送成功请求以创建新资源时,服务响应201 CREATED并在Location头字段中提供可以访问新资源的URI.

是否应该允许客户端存储此URI以便将来能够直接访问资源,如果存在多长时间?如果客户端缓存了URI,这似乎就是在设置一种情况,即每次服务器更改其URI布局时,都需要确保在访问旧URI时提供永久重定向.否则客户端会中断.几年来,这种重定向系统可能会失控.

与使用URI模板的REST-RPC混合方法相比,这种情况似乎不会使服务器对其URI空间有更多的控制.

有很多关于缓存表示的信息,但是在超文本驱动的RESTful系统中缓存URI呢?

rest caching uri hateoas

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

将目录添加到tomcat类路径

我的C:驱动器中有一个文件夹,因为C:\app_config\java_app 此文件夹包含一些特定于语言环境的属性文件.

我有一个java类(PrjPropertilesLocator)在Web App启动时基于默认语言环境加载属性文件.我的Web应用程序在tomcat中运行.问题是我应该如何C:\app_config\java_app在tomcat类路径中设置这个目录,以便它可以在PrjPropertilesLocator类中的ResourceBundle中使用.有没有办法我可以专门为需要它的单个Web应用程序设置此文件夹.我不想将属性文件放在WEB-INF/classes文件夹中.

在weblogic上运行正常.我在其中一个启动脚本中设置了weblogic类路径中的目录,它工作正常.但在Tomcat我试图把它startup.bat还在setclasspath.bat,但没能成功地这样做.

tomcat classpath

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

数组foreach问题

我在foreach声明方面遇到了一些问题foreach.尽管输入语句是一个数组,但它说

Invalid argument supplied for foreach()
Run Code Online (Sandbox Code Playgroud)

我的代码看起来像这样

foreach($res_array as $res)
     {
       foreach($res as $re)
       {
           echo $re['shortUrl'];
       }
     }
Run Code Online (Sandbox Code Playgroud)

我的数组看起来像这样

Array ( [errorCode] => 0 [errorMessage] => [results] => Array ( [http://www.telegraph.co.uk/earth/earthpicturegalleries/5966251/The-weirdest-animals-on-Planet-Earth.html?image=5] => Array ( [hash] => 2qNNV6 [shortUrl] => http://su.pr/2qNNV6 ) ) [statusCode] => OK ) 
Run Code Online (Sandbox Code Playgroud)

我得到了第二个foreach的错误.请帮我解决这个问题.

php foreach

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

返回随机数但不是2

为什么这有时会返回2?

function pickServer(){
    $varr = rand(1,4);
    if($varr==2){
        pickServer();
    }
    return $varr;
}
Run Code Online (Sandbox Code Playgroud)

php random recursion

5
推荐指数
4
解决办法
918
查看次数

为什么静态数据成员可能无法初始化?

我正在尝试在加载时注册一堆类的工厂.我的策略是利用静态初始化来确保在main()开始之前,工厂已准备就绪.当我动态链接我的库时,这个策略似乎有效,但是当我静态链接时,这种策略似乎没有用.当我静态链接时,只有一些静态数据成员被初始化.

让我们说我的工厂建造汽车.我有CarCreator类可以实例化一些汽车,但不是全部.我希望工厂收集所有这些CarCreator类,以便寻找新车的代码可以去工厂而不必知道谁将进行实际构造.

所以我有

CarTypes.hpp

enum CarTypes
{
   prius = 0,
   miata,
   hooptie,
   n_car_types
};
Run Code Online (Sandbox Code Playgroud)

MyFactory.hpp

class CarCreator
{
public:
   virtual Car * create_a_car( CarType ) = 0;
   virtual std::list< CarTypes > list_cars_I_create() = 0;
};

class MyFactory // makes cars
{
public:
   Car * create_car( CarType type );
   void factory_register( CarCreator * )

   static MyFactory * get_instance(); // singleton
private:
   MyFactory();

   std::vector< CarCreator * > car_creator_map;
};
Run Code Online (Sandbox Code Playgroud)

MyFactory.cpp

MyFactory:: MyFactory() : car_creator_map( n_car_types );

MyFactory * MyFactory::get_instance() {
   static MyFactory …
Run Code Online (Sandbox Code Playgroud)

c++ initialization static-members

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

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

带有JSON请求的ASP.Net MVC中的Tempdata

我有一个ActionResult,它将TempData设置为一个对象.

呈现的页面包含一个按钮,该按钮向同一控制器启动JSON请求.(对于jqGrid人口).

JSON请求上的TempData为空 - 为什么会发生这种情况?

更奇怪的是,如果我有一个按钮发布到同一个控制器,我单击它而不是我的JSON请求按钮,TempData将在那里,但是如果我单击JSON按钮,那么post按钮,TempData将为null.

帮助赞赏.

谢谢,克里斯

asp.net-mvc jquery json jqgrid

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

带有salt的MD5哈希,用于在C#中保存密码

你可以告诉我一些简单的算法,用于通过MD5散列用户密码,但是使用salt来提高可靠性.

现在我有这个:

private static string GenerateHash(string value)
{
    var data = System.Text.Encoding.ASCII.GetBytes(value);
    data = System.Security.Cryptography.MD5.Create().ComputeHash(data);
    return Convert.ToBase64String(data);
}
Run Code Online (Sandbox Code Playgroud)

.net c# security hash md5

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