小编use*_*918的帖子

Perl/CPAN如何分发脚本而不是模块

我刚刚发布了我的第一个perl程序,unifdef +(code :: unifdefplus,v0.5.3),但我不确定我是否已经正确完成了.该程序分为两部分 - 脚本(script/unifdef + .pl)和模块(lib/unifdefplus.pm).该脚本基本上是模块的包装器.这应该充当命令行实用程序(实际上我想发布它).

我包含的README文件记录了脚本,而不是模块.CPAN似乎也从模块而不是脚本中获取版本(目前尚未定义).

所以,我的问题是:如果我希望将其编入索引而不是模块,我是否需要做不同的事情?另外,我正在接受它我也应该为该模块编写一些文档 - 在这种情况下我假设它应该是lib目录中的README文件?

我再次道歉,但这是我第一次这样做,我想确保我做得对.

perl cpan

6
推荐指数
1
解决办法
139
查看次数

c ++中动态大小的类

我想创建一个Word包含一个单词的类.我将为字典中的每个单词都有一个类的实例(所以很多) - 不,我不能使用树结构来存储我的特定应用程序.当然,字符串的大小可能会有所不同,我不想杀死内存.我想在课堂上这样做,如下:

class Word {
    public:
        ...
    private:
        int         len;
        LetterData  letters[];
};
Run Code Online (Sandbox Code Playgroud)

然后使用以下命令动态分配Word:

Word *pNewWord = malloc(sizeof(Word)+sizeof(LetterData)*len);   
Run Code Online (Sandbox Code Playgroud)

我意识到这不是很C++'ish.所以我的问题是:首先,有没有更好的方法来做到这一点,如果没有,这会导致问题吗?Word不会继承任何其他类类型(我很确定继承会杀死这个......).

注意:内存使用和速度非常重要 - 我想避免每个字的额外指针,我想避免每次访问额外的指针deference ...

c++ dynamic-memory-allocation

5
推荐指数
2
解决办法
192
查看次数

perl在正则表达式中使用常量

我想知道在perl正则表达式中使用常量.我想做类似的事情:

use constant FOO => "foo"
use constant BAR => "bar"

$somvar =~ s/prefix1_FOO/prefix2_BAR/g;
Run Code Online (Sandbox Code Playgroud)

当然,在那里,FOO解决了三个字母F O O而不是扩展到常数.

我在线查看,有人建议使用其中任何一个${\FOO}@{[FOO]}其他人提到的(?{FOO}).我想知道是否有人可以了解哪些是正确的,以及是否有任何优势.或者,使用非常量变量更好吗?(性能是我的一个因素).

regex perl

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

MIN/MAX 宏不适用于 Visual Studio

我正在尝试编写一些需要在 Visual Studio 和 linux (gcc) 环境中编译/运行的代码。当我尝试在 Windows 中编译我的文件时,我遇到了一个有点模糊的错误,我想知道是否有人可以指出我缺少的内容...我有标准宏:

#define __MAX(a,b) \
   ({ __typeof__ (a) _a = (a); \
       __typeof__ (b) _b = (b); \
     _a > _b ? _a : _b; })
Run Code Online (Sandbox Code Playgroud)

然后当我尝试调用它时:

        int x = __MAX(0, 2);
Run Code Online (Sandbox Code Playgroud)

expected an expression在 Visual Studio 中收到错误,指向这一行。我是视觉工作室的新手,所以我不确定它不喜欢这个。谁能指出我做错了什么?

c c++ macros visual-studio

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

标签 统计

c++ ×2

perl ×2

c ×1

cpan ×1

dynamic-memory-allocation ×1

macros ×1

regex ×1

visual-studio ×1