小编bde*_*ham的帖子

如何使用Clojure的Apache Commons Codec库?

我正在尝试使用Apache Commons Codec包中的Base 64函数.我正在使用Leiningen,并在我的project.clj:

:dependencies [[org.clojure/clojure "1.2.0"]
               [commons-codec/commons-codec "1.4"]]
Run Code Online (Sandbox Code Playgroud)

莱宁根成功找到合适的.jar.我不能为我的生活弄清楚我实际上需要导入哪个类.我尝试了所有的变化

(ns my-project.core
  (:import (org.apache.commons.codec.binary Base64)))
Run Code Online (Sandbox Code Playgroud)

但似乎没什么用.我应该使用什么类名?

clojure apache-commons

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

在ObjectiveC中使用指针的最大优势是什么?

我意识到99%的人认为"这是什么......"但请帮助我理解这个使用概念pointers.我相信我的具体问题可以帮助很多新手.

我理解指针是什么,它们是对内存中地址的引用,通过使用(*)运算符,您可以获取该地址中的值.

让我们说:

int counter = 10;
int *somePointer = &counter;
Run Code Online (Sandbox Code Playgroud)

现在我有了内存中的地址counter,我可以通过这样做间接指出它的值:

int x = *somePointer;
Run Code Online (Sandbox Code Playgroud)

哪个x = 10,对吧?

但这是最基本的例子,对于这种情况我可以使用int x = counter;并获得该值,所以请解释为什么指针在Objective-C和其他一些语言中确实是如此重要...在什么情况下只有一个指针才能生成感?

欣赏它.

c cocoa pointers objective-c

7
推荐指数
2
解决办法
3042
查看次数

默认情况下记住所有方法

我正在编写一个收集和显示科学仪器数据的应用程序.其中一个数据是频谱:基本上只是一个值列表,加上一个带有一些元数据的字典.一旦应用程序收集了数据,它就不会改变,因此列表和元数据都可以被认为是不可变的.

我想通过大量记忆在频谱上执行计算的函数来利用这个优势.这是一个玩具示例:

class Spectrum(object):
    def __init__(self, values, metadata):
        self.values = values
        self.metadata = metadata
        # self.values and self.metadata should not change after this point.

    @property
    def first_value(self):
        return self.values[0]

    def multiply_by_constant(self, c):
        return [c*x for x in self.values]

    def double(self):
        return self.multiply_by_constant(2)
Run Code Online (Sandbox Code Playgroud)

我想要的是默认情况下要记住这些方法中的每一种.是否有某种方式(一个元类?)来实现这一点,而无需复制其中一个memoization装饰器和写@memoize到处?

python immutability

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

如何确定UIImage是否为空?

如何检查a UIImage是否为空?

class UserData {
    ...
    var photo: UIImage = UIImage()
}
Run Code Online (Sandbox Code Playgroud)

我的ViewController代码看起来像:

var userData = UserData()
    ...

func preparePhoto(){
        if (self.userData.photo == nil) {
            ...
        }else{
            ...
        }
    }
Run Code Online (Sandbox Code Playgroud)

self.userData.photo == nil 不适用于Swift.

Xcode说: UIImage is not convertible to MirrorDisposition

uiimage ios swift

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

我应该何时在这个简单的Web应用程序中关闭数据库连接?

我正在编写一个使用PostgreSQL的简单Go Web应用程序.我的main功能看起来像

var db *sql.DB

func main() {
    var err error
    db, err = sql.Open("postgres", "...")
    if err != nil {
        log.Fatalf("Couldn't connect to the database: %v", err)
    }

    http.HandleFunc("/whatever", whateverHandler)
    http.ListenAndServe("127.0.0.1:8080", nil)
}
Run Code Online (Sandbox Code Playgroud)

好像我应该Close()在某个时候调用数据库连接,但什么时候?这个应用程序永远服务(即直到我杀了它^C).如果我在ListenAndServe调用之后放入代码它就不会运行,因为我^C已经杀死了整个应用程序.我的申请应该有不同的结构吗?

go

7
推荐指数
2
解决办法
2940
查看次数

Xcode无法启动项目进行调试

我正在使用Xcode 4.6.3为OS X构建一个库.我的项目包含一个名为的目标LibraryTest,它是一个用于测试库功能的命令行应用程序.库和测试应用程序都可以正常构建,但是当我尝试运行应用程序时,它立即退出并且调试控制台显示:

error: failed to launch '/Users/bdesham/Library/Developer/Xcode/DerivedData/Wavelength_and_Spectrum_Library-byosniusyaoidgdcpzwzuzkitzgv/Build/Products/Debug/LibraryTest'
-- error: Host::LaunchProcess (launch_info) => pid=0,
path='/Applications/Xcode.app/Contents/SharedFrameworks/LLDB.framework/Versions/A/Resources/debugserver'
err = error: ::posix_spawnp (
    pid => 98649,
    path = '/Applications/Xcode.app/Contents/SharedFrameworks/LLDB.framework/Versions/A/Resources/debugserver',
    file_actions = 0x10b09e268,
    attr = 0x10b09e2a0,
    argv = 0x7fe2701377e0,
    envp = 0x0 )
err = Bad file descriptor (0x00000009) (0x00000009)
error: failed to launch '/Users/bdesham/Library/Developer/Xcode/DerivedData/Wavelength_and_Spectrum_Library-byosniusyaoidgdcpzwzuzkitzgv/Build/Products/Debug/LibraryTest'
-- error: Host::LaunchProcess (launch_info) => pid=0,
path='/Applications/Xcode.app/Contents/SharedFrameworks/LLDB.framework/Versions/A/Resources/debugserver'
err = error: ::posix_spawnp (
    pid => 98649,
    path = '/Applications/Xcode.app/Contents/SharedFrameworks/LLDB.framework/Versions/A/Resources/debugserver',
    file_actions = 0x10b09e268,
    attr = 0x10b09e2a0,
    argv = 0x7fe2701377e0, …
Run Code Online (Sandbox Code Playgroud)

macos xcode lldb

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

AFNetworking在post请求的JSON参数中发送数组

我正在尝试通过POST将参数发送到我的服务器,它通常可以正常工作,但我无法弄清楚如何发送包含数组的JSON作为参数之一.这是我尝试过的:

AFHTTPClient *httpClient = [[AFHTTPClient alloc] initWithBaseURL:[NSURL URLWithString:myURL]];
NSMutableArray *objectsInCart = [NSMutableArray arrayWithCapacity:[_cart count]];
for(NSDictionary *dict in _cart)
{
    NSObject *object = [dict objectForKey:@"object"];
    NSDictionary *objectDict = @{@"product_id": [NSString stringWithFormat:@"%d",[object productID]],
                                 @"quantity": [NSString stringWithFormat:@"%d", [[dict objectForKey:@"count"] intValue]],
                                 @"store_id": [NSString stringWithFormat:@"%d", [Store getStoreID]],
                                 @"price": [NSString stringWithFormat:@"%.2f", [object price]]};
    [objectsInCart addObject:objectDict];
}
NSError *error = nil;
NSString *cartJSON = [[NSString alloc] initWithData:[NSJSONSerialization dataWithJSONObject:objectsInCart
                                                                                    options:NSJSONWritingPrettyPrinted
                                                                                      error:&error]
                                           encoding:NSUTF8StringEncoding];

if(error)
{
    NSLog(@"Error serializing cart to JSON: %@", [error description]);
    return;
}

NSDictionary *parameters = @{@"status": …
Run Code Online (Sandbox Code Playgroud)

arrays post json ios afnetworking

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

Qt的PointerToMemberFunction定义在哪里?

这个问题中,我能够适应这种QObject方法

QMetaObject::Connection
QObject::connect(const QObject * sender,
    const char * signal,
    const QObject * receiver,
    const char * method,
    Qt::ConnectionType type = Qt::AutoConnection)
Run Code Online (Sandbox Code Playgroud)

转换为接受a QSharedPointer而不是a QObject*作为其第一个参数的变体:

template<class T> QMetaObject::Connection
connect_from_pointer(const QSharedPointer<T> &sender,
    const char *signal,
    const QObject *receiver,
    const char *method,
    Qt::ConnectionType type = Qt::AutoConnection)
Run Code Online (Sandbox Code Playgroud)

我想对带有函数指针的版本做同样的事情,

QMetaObject::Connection
QObject::connect(const QObject * sender,
    PointerToMemberFunction signal,
    const QObject * receiver,
    PointerToMemberFunction method,
    Qt::ConnectionType type = Qt::AutoConnection)
Run Code Online (Sandbox Code Playgroud)

但我无法弄清楚PointerToMemberFunction它的定义是什么或在哪里定义!这是什么类型的?

c++ qt qobject qsharedpointer

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

dyld找不到DVTFoundation.framework

我正在尝试将appledoc用于我的一个项目.我下载了项目,在Xcode中构建它,并将appledoc二进制文件复制到~/bin.尝试运行二进制文件会出现此错误:

appledoc version: 2.1 (build 858)

!> dyld: Library not loaded: @rpath/DVTFoundation.framework/Versions/A/DVTFoundation
!> Referenced from: /usr/bin/xcrun
!> Reason: image not found
docsetutil failed to index the documentation set, continuing with what was indexed...
Run Code Online (Sandbox Code Playgroud)

这就是整个输出.我做了一堆谷歌搜索并没有找到任何东西; 我最终删除了Xcode(版本4.6.3,来自Mac App Store)并重新安装.我重建appledoc并再次尝试,但我得到了同样的错误.

我认为问题可能是我也安装了Xcode 5开发人员预览版,所以我想我会xcode-select确保我的构建设置是理智的.但跑步xcode-select -print-path给了我一个类似的错误:

dyld: Library not loaded: @rpath/DVTFoundation.framework/Versions/A/DVTFoundation
  Referenced from: /usr/bin/xcode-select
  Reason: image not found
Trace/BPT trap
Run Code Online (Sandbox Code Playgroud)

我也尝试appledoc用Xcode 5 构建,结果相同.知道这里可能有什么问题吗?


编辑:这是输出otool -L ~/bin/appledoc:

bin/appledoc:
    /usr/lib/libicucore.A.dylib (compatibility …
Run Code Online (Sandbox Code Playgroud)

macos xcode dyld

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

什么是Brendan Eich的属性模式的性能优化?

Steve Yegge关于原型模式的论文结束时,他说,

Brendan Eich为物业模式提出了令人惊讶的聪明性能优化,他在1月份告诉我.我准备发表这篇文章了,但是我告诉他我要推迟到博客上写他的优化.每隔一段时间他就会打电话告诉我"现在任何一天."

布兰登,十月,该死!

那张纸条差不多写在五年前了,但我似乎无法找到有关Eich优化的信息.他或其他人是否曾公布过Yegge提到的改进措施?

design-patterns properties

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