小编spr*_*aff的帖子

是否已发表自然语言的生成语法?

我有一些与自然语言处理有关的想法.我需要一些语法

S -> NP VP
Run Code Online (Sandbox Code Playgroud)

多样性,以便与他们一起玩.

如果我自己尝试编写这些规则,那将是一项单调乏味且容易出错的业务.有没有人为英语和其他自然语言输入并发布了全面的规则集?理想情况下用BNF,Prolog或类似语法编写.

我的项目只涉及无上下文的语法,我对统计方法或机器学习不感兴趣 - 我需要系统地生成类似Engligh和Foobarian的句子.

如果你知道在哪里找到这样的物资,我会非常感激.

nlp

11
推荐指数
2
解决办法
1340
查看次数

如何在不引入重叠的情况下使DOT/neato图更紧凑?

我的问题与问题基本相同,但给定的答案对我不起作用.

下面是一个示例渲染(源极)

compound=true;
overlap=scalexy;
splines=true;
layout=neato;
Run Code Online (Sandbox Code Playgroud)

在此输入图像描述

边缘有一些不必要的重叠,但这不是太糟糕,主要问题是所有浪费的空间.

我尝试过设置sep=-0.7;,这就是发生的事情.

在此输入图像描述

间距要好得多,但现在与节点有一些重叠.我尝试了不同的overlap参数,这是唯一一个提供远程可接受结果的参数.

我尝试更改为fdp布局并在K全局设置spring常量属性,但我只是得到这样的东西:

在此输入图像描述

来源是所有直截了当a--b--c的东西,没有花哨的技巧.

我想要的是尽可能缩短所有边缘(最多),只要这种调整不会引入任何新的重叠,这是sep完全失败的地方.对于布局引擎而言,这似乎不应该太难.是否可以使用graphviz套件?我不介意更改渲染软件,但我不想在每个节点或每个边缘基础上注释源.

理想的结果是最小化边长的偏差,一次被认为是一个节点,即每个节点除了必要的例外之外还有相等长度的边,但这是一厢情愿的想法.优先级是减少每条边的长度,其约束条件是不会引入重叠.

我将接受部分解决方案,但它们必须是全自动和开源的.

我怎样才能做到这一点?谢谢.

dot neato

11
推荐指数
2
解决办法
2982
查看次数

为什么“继承的构造函数不是从相同或派生类型的表达式初始化的候选者”?

我希望这能奏效

struct Parent
{
    Parent ();

    Parent (const Parent &);
};

struct Child : public Parent
{
    using Parent::Parent;
};

Parent p;

Child c (p);
Run Code Online (Sandbox Code Playgroud)

Child继承了所有Parent的构造函数,对吧?

包括Parent::Parent(const Parent &)

x.cpp:15:11: error: no matching function for call to ‘Child::Child(Parent&)’
 Child c (p);
           ^
x.cpp:5:2: note: candidate: Parent::Parent(const Parent&)
  Parent (const Parent &);
  ^~~~~~
x.cpp:10:16: note:   inherited here
  using Parent::Parent;
                ^~~~~~
x.cpp:10:16: note:   an inherited constructor is not a candidate for initialization from an expression of the …
Run Code Online (Sandbox Code Playgroud)

c++ inheritance constructor c++11

11
推荐指数
2
解决办法
702
查看次数

如何在不分配内存地址的情况下保留内存地址

我想(在*nix中)分配一个大的,有条不紊的地址空间,但不会立即消耗资源,即我想保留一个地址范围,以后再分配它.

假设我做foo = malloc(3*1024*1024*1024)来分配3G,但是在1G计算机上有1G的交换文件.它会失败,对吗?

我想要做的是说"给我一个内存地址范围foo ... foo + 3G 我将分配 ",所以我可以保证这个区域内的所有分配都是连续的,但没有直接分配.

在上面的例子中,我想跟随一个bar = malloc(123)调用的foo = reserve_memory(3G)调用,该调用应该成功,因为reserve_memory尚未消耗任何资源,它只是保证bar不在范围内烟草工业富+ 3G.

稍后我会做一些像allocate_for_real(foo,0,234)那样消耗foo范围的字节0..234.此时,内核将分配一些虚拟页面并将它们映射到foo ... foo + 123 + N.

这在用户空间是否可行?

(关键在于foo中的对象需要连续,并且在创建后无法合理地移动.)

谢谢.

c linux memory

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

函数原型在main中声明 - 最佳实践?

这是在主函数内部声明函数原型的好方法吗?

我正在看一个C教程,我认为已经过时了.但是,他们在main中声明了函数原型.我通常在主要之前宣布在外面.

#include <stdio.h>

int main ()
{
    char myname [30];
    int theage;
    int getage ();

    printf ("\nEnter your name:");
    gets (myname);
    theage = getage ();
    printf("\n AGE = %d and NAME = %s", theage, myname);
    return 0;
}

int getage ()
{
    int myage; /* local to only getage() */

    printf ("\nEnter your age: ");
    scanf ("%d",&myage);
    return (myage);
}
Run Code Online (Sandbox Code Playgroud)

c

9
推荐指数
2
解决办法
8754
查看次数

哪个更快,将原始数据写入驱动器或写入文件?

我需要将数据写入驱动器.我有两个选择:

  1. 写原始扇区.(_ write(handle,pBuffer,size);)
  2. 写入文件(fwrite(pBuffer,size,count,pFile);)

哪种方式更快?

我期望原始扇区写入函数_write更有效.但是,我的测试结果失败了!fwrite更快._write成本较长.

我贴了我的片段; 也许我的代码是错的.你能帮我吗?无论哪种方式都可以,但我认为原始写入更好,因为看起来驱动器中的数据至少是加密的....

#define SSD_SECTOR_SIZE 512
int g_pSddDevHandle = _open("\\\\.\\G:",_O_RDWR | _O_BINARY, _S_IREAD | _S_IWRITE);
TIMER_START();
while (ulMovePointer < 1024 * 1024 * 1024)
{
    _write(g_pSddDevHandle,szMemZero,SSD_SECTOR_SIZE);
    ulMovePointer += SSD_SECTOR_SIZE;
}
TIMER_END();
TIMER_PRINT();
FILE * file = fopen("f:\\test.tmp","a+");
TIMER_START();
while (ulMovePointer < 1024 * 1024 * 1024)
{
    fwrite(szMemZero,SSD_SECTOR_SIZE,1,file);
    ulMovePointer += SSD_SECTOR_SIZE;
}
TIMER_END();
TIMER_PRINT();
Run Code Online (Sandbox Code Playgroud)

c c++ windows

9
推荐指数
2
解决办法
1525
查看次数

Javascript回溯

如何在Javascript中获得回溯?

理想特色:

  • 输入函数名称,或匿名函数的一些有意义的标识符,
  • 每个级别的参数列表,
  • 行号.

这可以在标准的ECMAScript中完成吗?

如果没有,可以在常见的网络浏览器方言中完成吗?

谢谢.

编辑 -

谢谢你的建议.

我的方言不支持arguments.callerarguments.callee.

我可以做这个:

try {
    let x = null;
    x .foo ();
}
catch (e) {
        debug (dump (e.stack));
}
Run Code Online (Sandbox Code Playgroud)

这让我得到了一个字符串的信息,一目了然,但走路会很有帮助e.stack.它有标准表格吗?

再次感谢.

javascript reflection callstack backtrace

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

阻止MySQL在UNIQUE约束中容忍多个NULL

我的SQL架构是

CREATE TABLE Foo (
 `bar` INT NULL ,
 `name` VARCHAR (59) NOT NULL ,
 UNIQUE ( `name`, `bar` )
) ENGINE = INNODB;
Run Code Online (Sandbox Code Playgroud)

MySQL允许重复以下语句,导致重复.

INSERT INTO Foo (`bar`, `name`) VALUES (NULL, 'abc');
Run Code Online (Sandbox Code Playgroud)

尽管有

UNIQUE ( `name`, `bar` )
Run Code Online (Sandbox Code Playgroud)

为什么容忍这种情况,如何阻止它?

mysql sql mysql5

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

尝试在CSS中创建一致的?-mark-inside-circle

我正在尝试使用CSS创建一个问号 - 圆圈内的字形.它应该看起来像©基本上.

这是我到目前为止所拥有的.

a::before
{
    content: '?';
    font-size: 60%;
    font-family: sans-serif;
    vertical-align: middle;
    font-weight: bold;
    text-align: center;
    display: inline-block;
    width: 1.8ex;
    height: 1.8ex;
    border-radius: 1ex;
    color: blue;
    background: white;
    border: thin solid blue;
}
Run Code Online (Sandbox Code Playgroud)

它在firefox上并不坏,但是圆圈内问号的位置在Chrome上偏离中心(我没有IE测试,但我假设最差).

我对字体的细微差别了解不多.这种方法可以跨平台工作,还是应该放弃并使用图像?我这样做是为了让它与字体一起缩放.

更新:到目前为止,根据建议调整设置仅在特定情况下提供改进.似乎总是存在一些字体大小,其水平或垂直方向的偏离中心不仅有舍入误差(超过1个像素).目标是使边框适合问号,不适合包含问号的方框边框,因为我怀疑正在发生.

html css

9
推荐指数
3
解决办法
8906
查看次数

返回传入的临时值并在同一语句中读取它是否安全?

我只是写了这篇文章而没有想太多.它似乎工作正常,但我不确定它是否严格安全.

class Foo
{
    struct Buffer
    {
        char data [sizeof ("output will look like this XXXX YYYY ZZZZ")];
    };

    const char * print (const char * format = DEFUALT_FORMAT, Buffer && buf = Buffer ())
    {
        sort_of_sprintf_thing (format, buf .data, sizeof (buf.data), ...);
        return buf .data;
    }
};

std :: cout << Foo () .print ();
Run Code Online (Sandbox Code Playgroud)

所以我认为语义是临时缓冲区将保持存在直到整个cout语句完成.这是对的,还是会在此之前超出范围,在这种情况下,这是UB?

c++ scope undefined-behavior

9
推荐指数
2
解决办法
509
查看次数