小编use*_*670的帖子

在 linux 上安装 R 包“rgeos”:找不到 geos-config 或不可执行

我在 gentoo 上运行 R 3.4.1。当我尝试安装“rgeos”包时,我得到了这个:

> install.packages("rgeos")
Installing package into ‘/home/jody/R/x86_64-pc-linux-gnu-library/3.4’
(as ‘lib’ is unspecified)
trying URL 'https://stat.ethz.ch/CRAN/src/contrib/rgeos_0.4-2.tar.gz'
Content type 'application/x-gzip' length 255244 bytes (249 KB)
==================================================
downloaded 249 KB

* installing *source* package ‘rgeos’ ...
** package ‘rgeos’ successfully unpacked and MD5 sums checked
configure: CC: x86_64-pc-linux-gnu-gcc
configure: CXX: x86_64-pc-linux-gnu-g++
configure: rgeos: 0.4-2
checking for /usr/bin/svnversion... yes
configure: svn revision: 581
checking for geos-config... no
no
configure: error: geos-config not found or not executable.
ERROR: configuration failed for package …
Run Code Online (Sandbox Code Playgroud)

r gentoo package

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

文件权限中的句点是什么意思?

我在'ls -l'的输出中找到了一个权限字符,我不明白:

[root@gnurr ~]# ls -l  /etc/cron.daily/
total 32
-rwxr-xr-x  1 root root  265 Sep 10 16:04 0logwatch
-rwxr-xr-x. 1 root root  118 Aug 17 12:21 cups
Run Code Online (Sandbox Code Playgroud)

文件'cups'的标准权限字符后有一段时间,但文件'0logwatch'不存在

我发现了很多这些点 - 它们也出现在目录或软链接中,但它们似乎永远不会显示我自己创建的文件.

我发现一些帖子在这个位置提到了'@'或'+',意思是'扩展属性'或'扩展安全信息',但没有关于'.'.

有人知道这意味着什么吗?

bash file-permissions ls

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

模板的"基类"?

(抱歉模糊的标题)

我有一个基类B与各种派生类D1,D2等.

此外,我有一个模板

template <class T> Storage;
Run Code Online (Sandbox Code Playgroud)

现在,每个派生类都有不同版本的Storage类

class D1 : public class B {
   Storage<int> *myStorage;
   void action1();
   void specific_D1_action();

   // other stuff...
}

class D2 : public class B {
   Storage<float> *myStorage;
   void action1();
   void specific_D2_action();

   // other stuff...
}
Run Code Online (Sandbox Code Playgroud)

D1::action1()D2::action1()使用他们各自myStorage的代码和完全相同的代码.但是,各个myStorage对象的实际模板参数不同.

是否有可能为所有版本的存储都有一种"基类",以便我可以在基类B(而不是D1,D2,...)中定义myStorage和action1以避免代码重复?

我认为我不能"模糊"基类B,因为派生类中的特定操作.

(这个例子非常简单 - 在实际情况下,模板参数是复杂的类)

c++ templates derived base-class

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

是否有一个 constexpr 可以让我确定特定类型是否有输出运算符 (&lt;&lt;)?

为了防止编译器将例如 a 应用于std::vector<T>类似的语句std::cout << u,我想做这样的事情:

\n
if constexpr (std::has_output_operator<U>) {\n    std::cout << u;\n}\n
Run Code Online (Sandbox Code Playgroud)\n

有什么方法可以实现这一目标吗?

\n

编辑(澄清)\n我正在研究类似 printf 的函数,它也可以打印 POD 的字符串和向量以及字符串(及其向量)。

\n

我想将此功能扩展到任何具有输出运算符的类型。

\n

非向量类型的实际格式化是由函数完成的simpleFormat()

\n
// simpleFormat\n//  special case for single string\n//\nstd::string simpleFormat(const std::string sFormat, const std::string t) {\n    size_t required = snprintf(NULL, 0, sFormat.c_str(), t.c_str());\n    char sTemp[required+1];\n    sprintf(sTemp, sFormat.c_str(), t.c_str());\n    return std::string(sTemp);\n} \n\n// simpleFormat\n//  catch for vectors (should not be sent to simpleFormat)\ntemplate<typename T>\nstd::string simpleFormat(const std::string sFormat, const std::vector<T> t) {\n …
Run Code Online (Sandbox Code Playgroud)

c++ if-constexpr

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

在 make 目标中设置 C 宏?

我的代码包含可以使用宏启用或禁用的各个部分。这可以通过代码中的#ifdef/#endif、makefile 中的-D 选项以及通过设置宏调用make 来完成。例子:

make DOMP=-DUSE_OMP
Run Code Online (Sandbox Code Playgroud)

在生成文件中

calco.o: calco.cpp calco.h
    $(CC) calco.cpp -o calco.o $(DOMP)
Run Code Online (Sandbox Code Playgroud)

在代码中

#ifdef USE_OMP
#pragma omp parallel for
#endif
    for (i =0; i < N; i++) {
       ...
    }
Run Code Online (Sandbox Code Playgroud)

我有很多可以设置的可能的宏,并且希望能够通过制作不同的目标来设置这些宏。例如

make calc_abc
Run Code Online (Sandbox Code Playgroud)

将使用一组特定的宏构建我的应用程序,而

make calc_xyz
Run Code Online (Sandbox Code Playgroud)

将使用一组不同的宏来做到这一点。

我在我的 makefile 中尝试了不同的方法,但没有发现任何有效的方法。这样的事情可能吗?

macros makefile

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

如何将重音符号从JavaScript传递到HTML?

在JavaScript中,我创建了一个带有重音字符的字符串,例如'ò'或'à',例如“òà”

我似乎无法在html中创建显示带重音符号的文本节点:如果我直接传递它们,则会出现“黑色菱形中的白色问号”;如果我将重音符号替换为相应的html实体,则会逐字打印实体。
该功能

function showAccents() {
  s1="ò à";
  s2 = s1.replace(/ò/, "&ograve;").replace(/à/, "&agrave");;
  var eD = document.getElementById("accent1");
  var eHT1 = document.createTextNode(s1);
  var eHT2 = document.createTextNode(s2);
  eD.appendChild(eHT1);
  eD.appendChild(eHT2);
}
Run Code Online (Sandbox Code Playgroud)

产生以下文本:

??òagrave

如何将字符串转换为HTML中带重音符号的字符?

html javascript

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