小编cnd*_*cnd的帖子

是否可以将代码标记为仅在调试模式下编译?

我在整个代码中都有一个try catch(或者在F#中)结构,但我并不真的需要它们在调试模式下,我更容易通过VS调试器调试错误.

所以我想标记try catch代码行只能在发布模式下编译 - 是否可能?

.net c# debugging f# visual-studio

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

如何设置[<Out>]参数?

我正在使用论证: [<Out>] message : string

但是当我试图设置它时:消息< - "开始位置没有数字"

我收到错误,因为消息不可变.如何列出论点?

f#

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

是否可以/如何在C ++应用程序中使用球拍?

我听说Racket可以嵌入(也许也可以用C ++嵌入)。

但是我找不到直接的方式(例如示例)如何从C ++运行Racket。

有一个简单的例子吗?

c++ lisp racket

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

是否可以在嵌入模式下使用OCaml?

前段时间我出现了Guile和Racket可以嵌入并从任何C++应用程序调用.

OCaml能这样工作吗?

interop ocaml

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

方案中的平台(OS)检测

那必须是这样的:

(if (= system-type 'gnu/linux)
    (system "make"))
Run Code Online (Sandbox Code Playgroud)

说实话,我认为我的方案实现甚至无法做到,但我可以自由地为它添加实现.平台检测的常用方案语法是什么?

谢谢

scheme r6rs

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

将选项传递给cmake以便将来选择交叉编译(CROSS_COMPILE)

IF(UNIX)
    # CROSS COMPILATION! ON/OFF
    #SET(CMAKE_C_COMPILER   /home/username/projects/buildroot/output/host/usr/bin/arm-linux-gcc)
    #SET(CMAKE_CXX_COMPILER /home/username/projects/buildroot/output/host/usr/bin/arm-linux-g++)
    #SET(CMAKE_C_COMPILER   /home/username/CodeSourcery/Sourcery_G++_Lite/bin/arm-none-eabi-gcc)
    #SET(CMAKE_CXX_COMPILER /home/username/CodeSourcery/Sourcery_G++_Lite/bin/arm-none-eabi-g++)
Run Code Online (Sandbox Code Playgroud)

这是我现在做的交叉编译.我想添加选项来运行它:

make CROSS_COMPILE=~/projects/buildroot/output/host/usr/bin/arm-linux-
Run Code Online (Sandbox Code Playgroud)

如果我没有路径CROSS_COMPILE来制作(而不是cmake)它必须使用系统默认值,所以cmake必须将此选项路径为makefile.我该怎么做?

makefile cmake cross-compiling

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

使用隐式构造函数将StructLayout属性添加到F#类型

我有:

type Package =
    abstract member Date : int
    abstract member Save : unit -> unit

[<type:StructLayout(LayoutKind.Sequential, Pack=1, CharSet=CharSet.Ansi)>]
type Instant(date : int, value : int) =
    let mutable _date = date
    let mutable _value = value
    member X.Value : int = _value
    interface Package with    
        member X.Date : int = _date
        member X.Save() = ...
Run Code Online (Sandbox Code Playgroud)

但是获得错误:只有没有隐式构造函数的结构和类可以被赋予'StructLayout'属性

所以我意识到它必须是相似的东西:

type Instant =
    struct
        val Date : byte array
        ...
Run Code Online (Sandbox Code Playgroud)

但是这样我丢失了界面.在C#中,例如type:StructLayout可以为这种类添加(我认为).我如何重构代码以避免此错误?

.net f# structlayout

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

同时在不同的目录(os.chdir)中工作(并行线程)

我想并行同步我的所有vcs目录.我要去目录并运行特殊的命令行脚本来同步git或mercurial存储库.这是一个缓慢的过程,所以我想尝试使它平行.

但是我的并行线程争夺"当前目录"有困难所以我需要一些技巧在同一时间在不同的目录中工作.

当前解决方案

def syncrepos(repos):
  for r in repos.split("\n"):
    if r:
      print("------ repository: ", r)
      thrd = ThreadingSync(r)
      thrd.setDaemon(True)
      thrd.start()
Run Code Online (Sandbox Code Playgroud)

ThreadingSync的位置

class ThreadingSync(threading.Thread):
  def __init__(self, repo):
    threading.Thread.__init__(self)
    self.repo = repo
  def run(self):
    r = self.repo.split("-t")
    path = (r[0]).strip()
    if len(r) < 2:
      vcs = VCS.git
    else:
      vcs = {
    'git'       : VCS.git,
    'git git'   : VCS.git_git,
    'git hg'    : VCS.git_mercurial,
    'git svn'   : VCS.git_subversion,
    'git vv'    : VCS.git_veracity,
    'hg hg'     : VCS.hg_hg}[(r[1]).strip()]
    os.chdir(path)
    if vcs == VCS.git:
      checkGitModifications()
      gitSync()
    ... …
Run Code Online (Sandbox Code Playgroud)

python directory parallel-processing multithreading multiprocessing

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

Buidling boost错误:'<pstage\lib> boost_system-vc120-mt-1_58.dll'的名称冲突

我正在尝试boost在64位系统上使用Visual Studio 2013 构建Windows 8.1.

b2 toolset="msvc" address-model=64 -s ZLIB_SOURCE=C:\H\M\zlib --build-type=complete stage
Run Code Online (Sandbox Code Playgroud)

这是完整的输出:

Performing configuration checks

    - symlinks supported       : no
    - junctions supported      : yes
    - hardlinks supported      : yes
    - arm                      : no
    - mips1                    : no
    - power                    : no
    - sparc                    : no
    - x86                      : yes
    - has_icu builds           : no
warning: Graph library does not contain MPI-based parallel components.
note: to enable them, add "using mpi ;" to your user-config.jam
    - iconv …
Run Code Online (Sandbox Code Playgroud)

c++ boost boost-build b2

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

我可以加载多个QTranslator文件,每个文件用于我的应用程序的不同部分吗?

我可以安装翻译器 myApp.installTranslator(&translator)

是否可以拥有多个翻译文件并从我的应用程序的不同部分加载它们?我该怎么做?

qt qtranslate

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