小编MKr*_*ert的帖子

Objective-C:检索Class实例的超类的首选方法

我想知道以下两个方法中哪一个是正确的或首选的方法来检索Class变量的超类:

  1. Class getSuperclass(Class cls) { return [cls superclass]; }

  2. Class getSuperclass(Class cls) { return class_getSuperclass(cls); }

objective-c objective-c-runtime

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

在"配置"步骤完成之前,在CMake中执行命令或宏作为最后一步

在配置阶段结束之前,CMake(版本> = 2.8.7)以某种方式执行宏或命令作为最后一步吗?

应在屏幕上打印以下行之前执行该功能:

-- Configuring done
-- Generating done
Run Code Online (Sandbox Code Playgroud)

到现在为止我没能找到这可以作为一个依赖与实现这个目标的CMake add_custom_command add_custom_targetadd_dependencies.

编辑:我们有一个库导出几个CMake宏,其中一些宏必须在CMakeLists.txt运行所有其他CMake命令后在每个文件的末尾执行.理想情况下,可以通过在文件macros.cmake中包含CMakeLists.txt文件来实现所需的行为,而无需在此CMakeLists.txt文件的末尾添加其他命令.

也可以通过收集一个宏中的所有功能来实现这一点,这个宏需要在结束时显式调用CMakeLists.txt.但是,已经有几个依赖库需要进行调整,这个问题的解决方案将省略这项额外的工作.此外,添加宏可能会被遗忘,或者可能很容易违反对最后一个语句的要求.

示例macros.cmake:

macro(FINAL_MACRO)
    message(STATUS "Last step before finishing Configure phase")
endmacro()

# HERE: something like add_custom_target(final_steps)
# followed by something like add_dependencies(final_steps cmake_configure_finished)
Run Code Online (Sandbox Code Playgroud)

示例顶级CMakeLists.txt:

cmake_minimum_required(VERSION 2.8.7)
include(macros.cmake)

add_subdirectory(source)
add_subdirectory(interfaces)

# Here FINAL_MACRO should get executed without explicitly writing it down
Run Code Online (Sandbox Code Playgroud)

如果没有其他选项,我们将不得不要求每个用户在其CMakeLists.txt文件末尾调用一个特殊的宏.

cmake

8
推荐指数
2
解决办法
4166
查看次数

如何为紧密防火墙配置Apache Spark随机工作端口?

我正在使用Apache Spark来运行机器学习算法和其他大数据任务.以前,我在同一台机器上使用运行spark master和worker的spark cluster standalone模式.现在,我添加了多个工作机器,由于防火墙严密,我必须编辑worker的随机端口.任何人都可以帮助如何更改随机火花端口,并告诉我究竟需要编辑什么配置文件?我读了spark文档,它说spark-defaults.conf应该配置,但我不知道如何配置这个文件,特别是改变spark的随机端口.

configuration ports worker apache-spark

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

使用 Bevy 0.4 拖动精灵的可接受方法是什么?

在尝试 Bevy 时,我需要拖放精灵。不幸的是,这似乎不是现成的,或者我没有在文档中找到它。

实现这一目标最惯用的方法是什么?

到目前为止我所尝试的都在我的答案中,但我很乐意接受另一个更好/更快/更惯用的解决方案。

drag-and-drop sprite drag rust bevy

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

生成的解析器因 Node.js 上的转义引号而引发错误

我正在使用PEG.js创建一个包含解析字符串的解析器。
包含任何类型字符的字符串都用引号括起来",并且可能包含转义引号\"
到目前为止,我有以下规则:

start
    = ["] string:(( '\\"' {return '"';} / [^"])*) ["]
        {return string.join('');}
Run Code Online (Sandbox Code Playgroud)

它在PEG.js 在线版本中工作,并"abc\"def"针对给定的输入进行生成"abc\"def"

为 Node.js 版本 0.6.21 和 PEG.js 版本 0.7.0 生成的解析器按以下方式执行

var result = parser.parse('"abc\"def"');
Run Code Online (Sandbox Code Playgroud)

并产生以下错误:

{ name: 'SyntaxError',
  expected: [],
  found: 'd',
  message: 'Expected end of input but "d" found.',
  offset: 5,
  line: 1,
  column: 6 }
Run Code Online (Sandbox Code Playgroud)

但是,使用\\"代替会\"成功并获得预期的输出。

var result = parser.parse('"abc\\"def"'); // parses correctly
Run Code Online (Sandbox Code Playgroud)

这个问题有解释或解决方法吗?特别是,我不可能对解析器的预期输入中的所有引号进行双重转义。

javascript peg parser-generator node.js

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

缩进 h2 之后的所有标签,直到使用 CSS 命中下一个 h2

在我们的项目中,我想为我们的 doxygen 输出设置不同的样式。目前生成的 html 如下所示:

<html>
<body>
    <h1> Heading 1 </h1>

    <h2> Heading 2.1 </h2>
    <p> Paragraph 2.1.1 </p>
    <p> Paragraph 2.1.2 </p>
    <p> Paragraph 2.1.3 </p>

    <h2> Heading 2.2 </h2>
    <p> Paragraph 2.2.1 </p>
    <p> Paragraph 2.2.2 </p>
    <p> Paragraph 2.2.3 </p>
</body>
</html>
Run Code Online (Sandbox Code Playgroud)

<h2>只与一个样式font-size属性,所有<h2><p>标记在文档的左侧对齐。

为了让任何<h2>标签下方的内容在视觉上突出,我想缩进标签直到下一个<h2>标签。

到目前为止,我尝试的是以下 CSS 规则:

h2 + * {
    margin-left: 10px;
}
Run Code Online (Sandbox Code Playgroud)

*之所以使用,是因为除了<p>标签之外还存在其他标签。但是,此规则仅缩进<h2>标签后面的第一段,而不是所有标签都缩进到下一个<h2>标签。

还应该提到的是,html 的结构不能更改为将每个部分包裹在<div> …

html css layout doxygen

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

Eclipse CDT找不到#include <__ debug>

上周我单击c ++项目的构建按钮时它一切都很好,它会生成二进制文件,我可以正常运行程序.但今天我更新了应用程序商店中的"命令行工具"(Btw my laptop is mac OSX 10.10.2),当我点击构建按钮时,它会生成此错误消息

/Library/Developer/CommandLineTools/usr/bin/../include/c++/v1/iterator:341:10:致命错误:找不到'__debug'文件"#include <__ debug>"

生成1个错误.

我不能再生成二进制文件并运行我的程序......

我没有改变eclipse中的任何设置.

那么我该如何解决这个问题呢?

c++ eclipse osx-yosemite

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