小编Kri*_*son的帖子

为什么在Adler-32校验和算法中模数为65521?

Adler-32校验和算法总和模数为65521.我知道65521是最大的素数,适合16位,但为什么在这个算法中使用素数很重要?

(我确信一旦有人告诉我,答案就会显而易见,但我脑中的数论理论部分却无法正常工作.即使没有校验和算法方面的专业知识,一个聪明的人也会阅读http://en.wikipedia. org/wiki/Fletcher%27s_checksum可能会向我解释.)

algorithm math checksum adler32

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

Uncrustify可以在Objective-C方法调用中对齐冒号吗?

我正在使用uncrustify 0.52.当我针对Objective-C文件运行它时,它想要转换方法调用,如下所示:

[NSApp beginSheet:startTimerDialog
   modalForWindow:nil
    modalDelegate:nil
   didEndSelector:nil
      contextInfo:nil];
Run Code Online (Sandbox Code Playgroud)

对此:

[NSApp beginSheet:startTimerDialog
 modalForWindow:nil
 modalDelegate:nil
 didEndSelector:nil
 contextInfo:nil];
Run Code Online (Sandbox Code Playgroud)

我更喜欢第一个版本,冒号对齐.在uncrustify配置文件中是否有一个选项可以支持我想要的内容,或者只是不支持对齐的冒号?

如果unrustify不能对齐冒号,有没有办法防止它排除我自己对齐的冒号?

更新:

mmc注意到此功能在Build 1581版本的Uncrustify svn存储库中可用.它处于unrustify 0.54.align_oc_msg_colon = true在配置文件中设置以启用它.

进一步更新

对于将来找到此答案的人:.cfg文件中的首选项名称已更改.现在align_oc_msg_colon_span= 1要获得上述行为.现在还有一个align_oc_decl_colon = true将为多行声明做名称的事情.

objective-c uncrustify

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

模拟流体流动的算法

我有一个游戏理念,需要对流体在各种物体周围流动的半真实模拟.想象一下在不规则表面上的水银池,它在各个方向上倾斜.

这适用于游戏,因此不需要100%的物理真实感.最重要的是,计算可以在具有iPhone功能的设备上实时完成.

我认为某种细胞自动机或粒子系统是可行的方法,但我不知道从哪里开始.

有什么建议?

algorithm simulation cellular-automata

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

如何防止"svn diff"在Windows上生成Unicode输出

在我的Windows框中,我尝试使用该命令创建Subversion补丁svn diff > my_patch.diff.生成的文件使用UTF-16编码,而不是UTF-8或ASCII编码,所以当我尝试使用patch(来自GnuWin32)应用补丁时,它不起作用.

我可以通过在记事本中打开它并将其保存为所需的格式,将补丁文件转换为UTF8,然后在patch此之后处理它.但是,有没有办法svn diff在Windows上生成UTF8?


更新:正如我的回答所示,事实证明问题与Subversion无关diff,或者patch.PowerShell是非常有用的将输出转换为Unicode.我将问题保留原样,以便有类似问题的人可能偶然发现它.

svn powershell diff patch

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

如何在Mac OS X上检查已安装的Qt版本

是否有命令检查Mac OS X上已安装的Qt的版本.我的Mac OS X版本是10.6.7.

Eidt:更新状态10/28/2011

运行/ usr/sbin/system_profiler SPFrameworksDataType时,QTkit的版本是7.6.6.

qglobal.h中宏QT_VERSION_STR的值为"4.7.2".

我很困惑为什么两个版本字符串不同?显然,版本字符串"4.7.2"是我想要的.

谢谢,杰弗里

macos qt

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

动态更改UISearchBar的键盘类型

我有一个使用UISearchBar和的iPhone应用程序UISearchDisplayController.搜索栏有三个范围按钮.我希望键盘在选择特定范围按钮时成为数字键盘,但在选择任何其他范围按钮时成为默认键盘.

我已经实现了UISearchBarDelegate selectedScopeButtonIndexDidChange:selectedScope如下方法:

- (void)searchBar:(UISearchBar *)searchBar selectedScopeButtonIndexDidChange:(NSInteger)selectedScope
{
    switch (selectedScope) {
        case DeviceIDScopeIndex:
            searchBar.keyboardType = UIKeyboardTypeNumberPad;
            break;
        default:
            searchBar.keyboardType = UIKeyboardTypeDefault;
            break;
    }
}
Run Code Online (Sandbox Code Playgroud)

我知道该方法被调用,并且当选择了相关按钮时会触发正确的情况.但屏幕键盘不会改变,除非我点击取消按钮隐藏键盘,然后再次点击搜索字段再次调出键盘.

有没有办法让键盘在屏幕上改变自己,或以编程方式隐藏它然后重新显示它?

iphone cocoa-touch uisearchbar

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

在编译iPad时是否有一个特定的Xcode编译器标志?

在编译iPad时是否有一个特定的Xcode编译器标志?

我想有条件地编译iPad与iPhone/iPod Touch代码,例如:

#ifdef TARGET_IPAD
   code for iPad
#else
   code for iPhone
#endif
Run Code Online (Sandbox Code Playgroud)

我知道在TargetConditionals.h中已经有TARGET_OS_IPHONE和TARGET_CPU_ARM,但是任何容易且专门针对iPad的东西?

-Rei

ipad iphone-sdk-3.2

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

如何使用NSJSONSerialization反序列化转义的JSON字符串?

我有一个iOS应用程序需要处理来自Web服务的响应.响应是包含序列化JSON对象的序列化JSON字符串,如下所示:

"{ \"name\" : \"Bob\", \"age\" : 21 }"
Run Code Online (Sandbox Code Playgroud)

请注意,此响应是JSON 字符串,而不是JSON对象.我需要做的是反序列化字符串,以便我得到这个:

{ "name" : "Bob", "age" : 21 }
Run Code Online (Sandbox Code Playgroud)

然后我可以用+[NSJSONSerialization JSONObjectWithData:options:error:]它将其反序列化为一个NSDictionary.

但是,我该如何做到第一步呢?也就是说,我如何"unes​​cape"字符串,以便我有一个序列化的JSON对象? +[NSJSONSerialization JSONObjectWithData:options:error:]仅当顶级对象是数组或字典时才有效; 它不适用于字符串.

我最终编写了自己的JSON字符串解析器,我希望它符合RFC 4627的2.5节.但我怀疑我忽略了一些简单的方法来使用NSJSONSerialization或其他一些可用的方法.

cocoa json ios nsjsonserialization

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

如何使用Eclipse在Linux上调试C++程序?

我不使用Eclipse作为IDE,并且没有兴趣这样做.但是,我喜欢它的源代码级调试.

有没有什么方法可以用它来调试C++ Linux应用程序而无需通过创建项目的仪式?(实际上,我可以像使用gdb的前端一样使用它吗?)

如果没有,我需要遵循什么步骤来创建一个项目,我可以用它来调试使用Makefile或其他工具(SCons,CMake等)构建的现有C++程序.我不想在Eclipse中"开发"; 我需要做的就是调试.

c++ eclipse debugging eclipse-cdt

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

没有虚函数的C++动态调度

我有一些遗留代码,而不是虚函数,使用kind字段进行动态调度.它看起来像这样:

// Base struct shared by all subtypes
// Plain-old data; can't use virtual functions
struct POD
{
    int kind;

    int GetFoo();
    int GetBar();
    int GetBaz();
    int GetXyzzy();
};

enum Kind { Kind_Derived1, Kind_Derived2, Kind_Derived3 /* , ... */ };

struct Derived1: POD
{
    Derived1(): kind(Kind_Derived1) {}

    int GetFoo();
    int GetBar();
    int GetBaz();
    int GetXyzzy();

    // ... plus other type-specific data and function members ...
};

struct Derived2: POD
{
    Derived2(): kind(Kind_Derived2) {}

    int GetFoo();
    int GetBar();
    int …
Run Code Online (Sandbox Code Playgroud)

c++ refactoring metaprogramming template-meta-programming

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