小编Chr*_*ris的帖子

如何在julia控制台中获得的julia代码中输出相同的打印格式?

使用julia控制台时,键入以下内容:

[10,20]*[1:100,1:100]'
Run Code Online (Sandbox Code Playgroud)

你会得到这样的输出:

2x200 Array{Int64,2}:
 10  20  30  40   50   60   70   80   90  100  …   930   940   950   960   970   980   990  1000
 20  40  60  80  100  120  140  160  180  200     1860  1880  1900  1920  1940  1960  1980  2000
Run Code Online (Sandbox Code Playgroud)

在执行这样的代码时如何获得此输出格式julia my_code.jl

现在我正在使用println()@show,但是他们输出完整的数组,没有关于尺寸或类型的信息,这将是很好看的.我通常也不需要看到完整的3x60,000元素矩阵打印,但通常很高兴看到第一个和最后几个元素.有没有简单的方法来做到这一点(julia控制台格式得到相同的输出)?

julia

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

如何调试 Chrome 中的无头 pdf 打印问题?

注意:这不是直接)关于如何在 chrome 中打印 PDF 的问题,而是关于如何在打印失败时获取更多信息的问题。

\n

简而言之:我无法解决打印 PDF 问题,该问题仅发生在某些(可能很大)页面上,并且可以在调试实际问题时使用一些帮助。

\n

背景:我正在使用 chromedriver (v83) 和 chromium-browser (v83) 通过 python selenium 从网页打印 PDF 文件。我正在构建一个 docker 映像来包含所需的依赖项。我尝试过使用 Debian(buster 和stretch)以及 Alpine 基本映像,但在尝试打印某些页面时最终都会导致相同的错误。奇怪的是,对于其他(较小的)页面,打印可以工作,但是当要打印许多资源和页面时,打印失败。我可能会补充一点,这个 docker 镜像最终会在 Kubernetes 集群内部运行,我在其中分配了高达 4GB 的 RAM。

\n

我正在运行什么代码?

\n

这个项目是为python3编写的,所以这里有一些相关的代码片段。请注意,我在此处删除了所有错误处理并等待页面加载完成。

\n
from selenium import webdriver\n\nappState = {\n    "recentDestinations": [\n        {\n            "id": "Save as PDF",\n            "origin": "local"\n        }\n    ],\n    "selectedDestinationId": "Save as PDF",\n    "version": 2\n}\n\ndef get_chrome_options(headless: bool, enable_logging: bool) -> Options:\n    chrome_options = webdriver.ChromeOptions()\n    profile …
Run Code Online (Sandbox Code Playgroud)

chromium selenium-chromedriver docker google-chrome-headless

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

如何在Mac OS上使用glGetIntegerv(GL_TEXTURE_BINDING_2D,...)?

我试图GL_TEXTURE_BINDING_2D在我的代码中使用,但它不会在Mac OS X(10.6)下编译.我包括gl.hglext.h,但这样的代码:

int prevTextureBinding;
glGetIntegerv(GL_TEXTURE_2D_BINDING, &prevTextureBinding);
Run Code Online (Sandbox Code Playgroud)

我总是得到这个错误:

../FramebufferGroup.cpp:365: error:
    'GL_TEXTURE_2D_BINDING' was not declared in this scope
Run Code Online (Sandbox Code Playgroud)

当使用其他OpenGL枚举(如GL_TEXTURE_2D)时,我没有任何问题,可以编译得很好 - 所以我的问题是:

  • 有人知道Mac OS X是否支持GL_TEXTURE_2D_BINDING

...我也尝试使用GL_TEXTURE_2D_BINDING_EXT,但苹果文档似乎表明它GL_TEXTURE_2D_BINDING应该是一个有效的参数:http: //developer.apple.com/library/mac/#documentation/Darwin/Reference/ManPages/man3/glGet .3.html

谢谢!

opengl macos

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

如何在容器中存储不同类型的模板化对象?

假设我有一个vector(或list任何可能更适合这里的容器),我想将多个模板类型的对象(或指针)存储在:

std::vector<MyClass<double>> v;
// std::vector<MyClass<double> *> v;
Run Code Online (Sandbox Code Playgroud)

不幸的是,我想在这个容器中存储不同的模板化对象(我需要在恒定时间访问它们)。

我的第一直觉是建立某种形式的WrapperClass周围MyClass,将内部管理的任何MyClass一个成员变量,但它不是很清楚,我怎么就可以沿着适当的类型,通过传递MyClass

#include <iostream>
#include <string>
#include <stdlib.h>
#include <vector>

using namespace std;

template<typename T>
class MyClass
{
public:
    MyClass() {}
    ~MyClass() {}
};

// templating this of course works, but it doesn't solve my problem
template<typename T>
class WrapperClass
{
public:
    WrapperClass()
    {
        m_object = MyClass<T>();
    }

    ~WrapperClass() { }

private:
    MyClass<T> m_object;
};

int main()
{
    WrapperClass<bool> tmp = …
Run Code Online (Sandbox Code Playgroud)

c++ templates

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

CMake 检查下载文件的哈希值 (MD5 / SHA256)

add_custom_commandUtil.cmake脚本中使用 CMake 下载几个文件,这些文件稍后将在构建过程中使用。然而,这些文件可能会发生变化,我想添加一种方法来根据提供的值(在 CMake 内)检查本地文件的哈希值,以决定是否需要重新下载文件。

目前,一旦文件被下载,CMake将不会考虑重新下载它,因为该文件已经存在于本地。

将来,我想提供该文件的 MD5 / SHA256 校验和,并确保本地文件是正确的。

这是我想要做的(这只是一个概念示例):

add_custom_command( OUTPUT ./file.dat
    COMMAND wget ${FILE_PATH}
)
if (opt_HASH)
    add_custom_command(OUTPUT ${local_HASH}
        COMMAND local_HASH=$(sha256sum ./file.dat)
        DEPENDS ./file.dat
    )
    if (NOT ${opt_HASH} STREQUAL ${local_HASH})
        # throw ERROR
    endif()
endif()
Run Code Online (Sandbox Code Playgroud)

正如您所看到的,我现在只想检测不匹配,甚至不想自动下载更改的文件。显然是opt_HASH通过 CMake 提供的,但重要的是这个调用需要依赖于已经下载的文件,我似乎能够通过更简单的调用来做到这一点FILE()

PS:如果更容易的话,我也可以使用MD5over SHA256

c++ hash download cmake sha256

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