问题列表 - 第35525页

是否可以使用EVP API使用AES CTR模式加密?

我是OpenSSL的新手.我知道应该使用EVP API执行加密,EVP API充当所有密码的通用接口.AES CTR模式似乎存在于我所拥有的OpenSSL版本中,但EVP_aes_128_ctr的定义在evp.h中被禁用:

#if 0
const EVP_CIPHER *EVP_aes_128_ctr(void);
#endif
Run Code Online (Sandbox Code Playgroud)

知道为什么会这样吗?我可以删除#if 0吗?有关获得128位AES CTR模式加密以在OpenSSL中工作的任何其他指示将不胜感激!

谢谢!

encryption openssl aes

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

为什么这个泛型约束在它似乎有一个循环引用时编译

我在csharp中为MVCContrib Html助手编写了一个扩展方法,并对通用约束的形式感到惊讶,从表面看它通过类型参数循环引用自身.

据说这种方法可以根据需要进行编译和工作.

我希望有人解释为什么这有效,如果存在更直观的直观语法,如果没有人知道为什么?

这是编译和功能代码,但我删除了T的例子,因为它使问题蒙上阴影.以及使用List <T>的类似方法.

namespace MvcContrib.FluentHtml 
{
  public static class FluentHtmlElementExtensions
  {
    public static TextInput<T> ReadOnly<T>(this TextInput<T> element, bool value)
        where T: TextInput<T>
    {
        if (value)
            element.Attr("readonly", "readonly");
        else
            ((IElement)element).RemoveAttr("readonly");
        return element;
    }
  }
}
Run Code Online (Sandbox Code Playgroud)

    /*analogous method for comparison*/
    public static List<T> AddNullItem<T>(this List<T> list, bool value) 
        where T : List<T>
    {
        list.Add(null);
        return list;
    }
Run Code Online (Sandbox Code Playgroud)

在第一种方法中,约束T:TextInput <T>似乎是所有意图和目的,循环.但是,如果我发表评论,我会收到编译错误:

"类型'T'不能在泛型类型或方法'MvcContrib.FluentHtml.Elements.TextInput <T>'中用作类型参数'T'.没有从'T'到'MvcContrib的装箱转换或类型参数转换.FluentHtml.Elements.TextInput <T>"".

在List <T>的情况下,错误是:

"'System.Collections.Generic.List.Add(T)'的最佳重载方法匹配有一些无效的参数参数1:无法从'<null>'转换为'T'"

我可以想象一个更直观的定义是包含2种类型的定义,对泛型类型的引用和对约束类型的引用,例如:

public static TextInput<T> ReadOnly<T,U>(this TextInput<T> element, bool value) 
    where U: TextInput<T>
Run Code Online (Sandbox Code Playgroud)

要么 …

c# generics constraints

6
推荐指数
2
解决办法
1606
查看次数

Var arg list in main

我想使用我的程序:

./program -I /usr/include/ /usr/bin/ /usr/local/include/ ...
Run Code Online (Sandbox Code Playgroud)

交换机可以像var args列表一样继续运行.我怎么能在C99那样做?最好得到一个类似char **args_listchar *args_list[]包含所有喜欢的东西/usr/include/usr/bin/.

c c99 variadic-functions

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

MySQL的MD5哈希是不正确的

PHP的md5("123123")给了我一个正确的值4297f44b13955235245b2497399d7a93,而mysql的

select md5("123123");
Run Code Online (Sandbox Code Playgroud)

给了我'6e9abeea535938c496a261b3b39c0d79'.

为什么会这样?这与mysql服务器崩溃有什么关系吗?我有点失去它,非常感谢!

谢谢!

php mysql md5

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

使用three20会让我的应用变慢吗?

我想使用three20的TTThumbsView和TTPhotoView构建类似Grindr的东西.而不是(1)继承这些类,我宁愿(2)分析它们并构建需要的代码并相应地调整它.为什么?因为我担心的是选项(1)会增加我们应用的下载大小并降低其性能.(我想要的另一件事是三个20的缓存,但我真的不明白它,因为现在我们正在使用Core Data.三个20缓存是如何工作的?)

如果我只使用three20的一部分,当我编译应用程序时,它是否还会构建其他未使用的代码?还是会把它留下来?如果它离开了,那么这给了我一些希望,也许选项(1)不会使应用程序下载更大.

在性能(速度)方面.请问three20跑得快吗?有很多子类化正在进行中.这不会减慢事情吗?Facebook iPhone应用程序似乎相当不错,而且使用了三个20,对吗?

你怎么看?

谢谢!

马特

iphone three20 ttthumbsviewcontroller

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

C++异常处理和错误报告习语

在C++中,RAII经常被提倡作为异常处理的优秀方法:如果抛出异常,则堆栈被展开,所有析构函数都被调用,资源被清理.

但是,这会出现错误报告问题.假设一个非常通用的函数失败,堆栈被解开到顶层,我在日志中看到的只有:

无法从套接字读取:由对等方重置连接.

......或任何同样通用的信息.这并没有说明抛出异常的上下文.特别是如果我正在运行类似事件队列处理循环的东西.

当然,我可以用try/catch块包装每次调用套接字读取,捕获异常,构造一个带有更详细上下文信息的新内容并重新抛出它,但是它违背了使用RAII的目的,并且缓慢但肯定地变得比处理返回错误代码更糟糕.

在标准C++中详细报告错误报告的更好方法是什么?我也对涉及Boost的建议持开放态度.

c++ exception-handling

15
推荐指数
2
解决办法
4318
查看次数

PHP类逻辑

我的问题很简单,给出:

class MyClass{
   function a(){
       echo "F.A ";
   }
   function b(){
       echo "F.B ";
   }
}

$c=new MyClass;
$c->a()->b()->b()->a();
Run Code Online (Sandbox Code Playgroud)

所以它会输出:

FA FB FB FA

需要对代码进行哪些更改才能使其工作,或者它应该按原样工作,甚至只是调用它.如果我可以得到任何这个术语,我可以研究它mysqlf,但我不太确定谷歌是什么.

提前致谢!

php oop abstract-class class

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

检测类似图像

可能重复:
图像比较算法

所以基本上我需要编写一个程序来检查2个图像是否相同.考虑以下2张图片:

http://i221.photobucket.com/albums/dd298/ramdeen32/starry_night.jpg

http://i221.photobucket.com/albums/dd298/ramdeen32/starry_night2.jpg

那么它们都是相同的图像,但我如何检查这些图像是否相同.我仅限于媒体功能.我现在能想到的只是宽度高度缩放并比较每个像素的RGB但是颜色不同吗?

我完全迷失在这一个,任何帮助表示赞赏.

*注意这必须在python中并使用(媒体库)

python media comparison image

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

使用javascript记录和检索html元素/节点路径

假设我在大型html文档中选择了span标记.如果我将整个html文档视为一个大的嵌套数组,我可以通过数组索引找到span标记的位置.如何输出该span标记的索引路径?例如:1,2,0,12,7使用JavaScript.

另外,如何通过索引路径选择span标记?

html javascript

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

在画布中平滑用户绘制的线条

我正在使用<canvas>签名形式捕获用户输入,并试图找出如何平滑鼠标输入.

我认为我需要按块处理用户的鼠标移动块并平滑每个块,我不是在超级平滑之后但是锯齿状输入的任何改进都会很好.

谢谢,马克

html5 canvas

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