小编Phi*_*ard的帖子

带有 F# 的 Kraken 私有 API 返回 EGeneral:无效参数

我正在尝试使用 F# 访问 Kraken 私有 API。访问公共 API 的代码运行得非常好,但是当我尝试访问私有 API 时,我总是收到错误“EGeneral:Invalid arguments”。

#r "FSharp.Data.dll"

open FSharp.Data
open System
open System.Text
open System.Security.Cryptography

let baseUri = "https://api.kraken.com"
let key = MY_KRAKEN_API_KEY
let secret = MY_KRAKEN_API_SECRET
let path = "/0/private/Balance"
let nonce = DateTime.UtcNow.Ticks
let bodyText = "nonce=" + nonce.ToString()

let hmac (key : byte []) (data : byte[]) =
    use hmac = new HMACSHA512(key)
    hmac.ComputeHash(data)

let sha256 (data : string) =
    use sha = SHA256Managed.Create()
    sha.ComputeHash(Encoding.UTF8.GetBytes(data))

let createSignature (nonce : int64) body …
Run Code Online (Sandbox Code Playgroud)

rest f# http-post f#-data

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

在Fedora 18上针对Centos 6.4进行交叉编译

我正在Fedora 18机器上开发一个项目,该项目使用C ++ 11标准中的类,并希望将其部署在Centos 6.4服务器上。

除了libc和libc ++版本(分别为GLIBC_2.11,GLIBCXX_3.4.15和在我的Fedora机器上的GLIBC_2.14和至少GLIBCXX_3.4.17上),我能够解决所有加载程序错误。

是否可以告诉编译器针对服务器版本或库的旧兼容版本进行编译/链接?

当我运行ldd可执行文件时,我得到

./executable: /lib64/libc.so.6: version `GLIBC_2.14' not found (required by ./executable)
./executable: /usr/lib64/libstdc++.so.6: version `GLIBCXX_3.4.15' not found (required by ./executable)
Run Code Online (Sandbox Code Playgroud)

提前致谢!

c++ fedora cross-compiling c++11 centos6

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

是否可以为模板化类型专门化模板?

对于我的程序,我需要定义一个Solver类,它可以解决问题或嵌套问题.

template< typename ProblemT >
struct Solver {
    static void a() {
        ProblemT::func();
    }
};

template< typename < typename SubT> ProblemT >
struct Solver<ProblemT< SubT> > {
    static void a() {
        ProblemT::func();
        SubT::func();
    }
};
Run Code Online (Sandbox Code Playgroud)

用法:

Solver<Problem1> solver;
Solver<Problem2<Problem3> > nested_solver;
Run Code Online (Sandbox Code Playgroud)

Solver的专用版本中,我需要知道ProblemsTSubT类型,以便正确定义类型并调用正确的函数.

是否只是一个简单的错误或是否无法定义这样的类?

c++ templates template-specialization

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