给子例程别名时出现“...仅使用一次:可能的拼写错误”警告

2024-03-31

我有一些模块,想为一些子模块创建别名。这是代码:

#!/usr/bin/perl

package MySub;

use strict;
use warnings;

sub new {
    my $class = shift;
    my $params = shift;
    my $self = {};
    bless( $self, $class );
    return $self;
}

sub do_some {
    my $self = shift;
    print "Do something!";
    return 1;
}

*other = \&do_some;

1;

它可以工作,但会产生编译警告

名称“MySub::other”仅使用一次:/tmp/MySub.pm 第 23 行可能存在拼写错误。

我知道我可以直接输入no warnings 'once';,但这是唯一的解决方案吗?为什么 Perl 警告我?我究竟做错了什么?


{
   no warnings 'once';
   *other = \&do_some;
}

or

*other = \&do_some;
*other if 0;  # Prevent spurious warning

我更喜欢后者。对于初学者来说,它只会禁用您想要禁用的警告实例。另外,如果您删除其中一行而忘记删除另一行,另一行将开始警告。完美的!

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

给子例程别名时出现“...仅使用一次:可能的拼写错误”警告 的相关文章

  • Perl OO 方法调用第一个参数值 (->)

    就 Perl OO 而言 到底做了什么 gt do 例如我拨打 main 电话 result a b gt mymethod 在我定义的包中mymethod 我使用以下内容 my class 总的来说 我显然没有向mymethod 那么哪里
  • WWW::Mechanize::Firefox - 如何打开多个选项卡

    我想打开两个单独的选项卡并在 Firefox 中保持打开状态 我在用WWW Mechanize Firefox 请找到下面的代码 usr bin perl w use strict use WWW Mechanize Firefox my
  • 使用 perl 比较两个 Unicode 字符串

    当我运行以下代码时 它不会进入 在此处执行某些操作 部分 my a P 3 lt 1 my b P 3 lt 1 if a ne b do something here 还有另一种方法可以将 Unicode 字符串与 perl 进行比较吗
  • 多个与单个 Catalyst 应用程序

    我有多个作为 FCGI 运行的 Catalyst 应用程序 将它们整合为具有多个控制器的单个控制器是否有好处 Thanks Simone 内存 大概吧 我认为每台服务器至少要保留 15MB 左右 因此如果您在 3 台服务器上运行 3 个应用
  • 使用 Getopt::Long 解析参数的最简洁方法

    我使用 GetOpt 来解析命令行参数 我想添加一个新选项 multi 它应该得到一个如下所示的字符串 key1 abc key2 123 key3 xwz 我不知道用户想要提供多少个自定义密钥 但他可以提供 minimax5键 另外 我想
  • Perl 单元测试只针对模块,而不针对程序吗?

    我在网上找到的文档和我拥有的书 Perl测试 或者说或者建议 Perl 的单元测试通常是在创建模块时完成的 这是真的 有没有办法使用单元测试实际程序Test More和表兄弟姐妹 当然 您可以使用测试脚本测试 更多 http search
  • 读入模板文件,使用用户输入填充并生成新文件

    我正在尝试读取如下所示的模板配置文件 template config path to speedseq package binary directory SPEEDSEQ BIN DIR usr local packages Sequenc
  • 如何在 Perl 脚本中包含另一个文件中的函数?

    这似乎是一个非常简单的问题 但不知何故 我的 Google Fu 失败了 在 Perl 中包含其他文件中的函数的语法是什么 我正在寻找类似C的东西 include blah h 我看到了使用 Perl 模块的选项 但这似乎需要对我当前的代码
  • 如何将 Perl 转换为 C?

    有没有可用的工具可以将 Perl 源代码转换为 C 源代码 什么平台都可以 对此的规范答案是MJD 的 为什么不将 Perl 翻译成 C http www perl com pub a 2001 06 27 ctoperl html
  • 如何使用 Perl 分割文本文件并将其存储到二维数组中?

    230215 01 16 2000 57533 0 1045403 0 0 217623 230215 01 18 2000 77659 0 1045403 0 0 217624 230215 01 25 2000 76583 0 1045
  • 在 Ubuntu 中执行 .cgi 文件

    我在 Ubuntu 下运行 Apache PHP 当我运行 cgi 文件时 通过http localhost mycgi cgi 浏览器将显示代码而不是运行它 如何让浏览器执行 CGI 文件而不是显示其内容 将这些行添加到您的 apache
  • 如何对 Data::Dumper 的输出进行排序?

    我想转储对象和散列的值 但它总是乱序打印键 如何按 递归 排序顺序转储键 use Data Dumper print Dumper obj Set Data Dumper Sortkeys 1获取 Perl 的默认排序顺序 如果要自定义顺序
  • 如何将会话管理添加到简单的 Perl CGI 网页?

    我有一个简单的网页 到目前为止不需要任何登录 它是用 Perl CGI 编程的 我想知道添加会话支持以便获得登录信息的步骤 我不需要非常复杂的方法 因为网页非常简单 另外 我想要一些关于支持 Perl 会话所需的技术 库的建议 我在很多很多
  • Perl Parallel::Forkmanager 不允许收集变量值

    也许因为子进程不知道我的散列 请参阅下面的代码 散列 输出没有收集任何内容 除了写入 tmp 文件之外 还有其他方法来收集该值吗 foreach Item AllItems pid pm gt start Item and next Tem
  • Perl:HTTP::微小删除留下损坏的锚标记

    我编写了一个脚本 该脚本收集从数据库读取的缓冲区内的所有 URL 检查该页面是否仍然存在 并使用 HTTP Tiny 从缓冲区中删除 URL 如果该 URL 无法访问或返回无效 问题是 HTTP Tiny 删除左锚标记 例如此处无效的文本
  • Perl:测试输入阅读器?

    有没有一种方法可以使用标准 Test 等模块自动测试 Perl 程序是否正在读取输入 例如标准输入正确吗 例如 测试一个从 STDIN 读取两个整数并打印它们之和的程序 这不是 100 清楚你的意思 我会回答假设你想编写一个测试脚本来测试你
  • 检查一个数字是 int 还是 float

    在perl中 我想检查给定变量是否包含浮点数 为了检查我正在使用的 my Var 0 02 Floating point number if int Var Var floating point number 但上面的代码对于 0 0 不起
  • Text::平衡和多行 xml

    看来我有点失落了 我需要解析一个大的 大约 100 mb 且相当难看的 xml 文件 如果我使用parsefile 它返回错误 文档元素后的垃圾 但它会很乐意解析文件的较小元素 所以我决定将文件分解为元素并解析它们 由于不鼓励使用正则表达式
  • Perl LWP GET 或 POST 到 SNI SSL URL

    我有一个使用 perl LWP 向客户发送数据的系统 他们可以选择 URL 以及是 POST 还是 GET 一位新客户最近抱怨该服务不起作用 他们怀疑这是因为他们的端点使用了 SNI SSL 查看日志 我看到的只是错误消息 证书验证失败 5
  • 折叠具有多个字段的行

    我有这个代码 awk seen 1 2 a 1 a 1 a 1 t 2 END for i in a print i a i inputfile 我想折叠具有两个以上字段的行 但始终基于第一个字段作为索引 输入文件 三列制表符分隔 prot

随机推荐

  • 正则表达式匹配字符串的一部分,但不匹配整个字符串

    这是我用来验证可以包含小写和大写字母 数字和破折号的字符串的正则表达式 a zA Z0 9 其结果如下 abd 火柴 abcd 火柴 abcd0 火柴 abcd0 火柴 abc 不匹配 正确 abc efg 匹配 不正确 不应该 我究竟做错
  • 在 Windows 上编译 Erlang 代码

    我安装了 Erlang 13B 并尝试按照教程进行操作 每次我到达c tut 我得到一个错误而不是 ok tut 所以看起来没有安装任何模块 有人能指出我正确的方向吗 我尝试过 Emacs 但我真的不知道如何使用它 甚至还没有接近让 Erl
  • OpenGL ES 2.0 中的 glTexGen

    我已经尝试了几个小时来用 GL OBJECT LINEAR 实现 glTexGen 的 GLSL 替换 对于 OpenGL ES 2 0 在 Ogl GLSL 中 有 gl TextureMatrix 使这变得更容易 但这在 OpenGL
  • 将对象直接流式传输到 std::string

    给定某种可流式传输的类型 struct X int i friend std ostream operator lt lt std ostream os X const x return os lt lt X lt lt x i lt lt
  • 在 Python 中嵌套函数会产生开销吗?

    在Python中 如果我在父函数中有一个子函数 那么每次调用父函数时子函数是否都会 初始化 创建 将一个函数嵌套在另一个函数中是否会产生任何性能开销 代码对象是预编译的 因此该部分没有开销 函数对象在每次调用时构建 它将函数名称绑定到代码对
  • 在 WPF 中仅画刷椭圆的部分

    我无法找到绘制以下形状的最佳方法 我正在使用下面的代码来绘制Ellipse在视觉层上 但我怎么可能只刷宿舍呢 我认为可以使用LinearGradientBrush or RadialGradientBrush但我不知道如何使用它 var c
  • ActiveMQ NMS:当代理关闭时,connection.start() 会因故障转移协议而挂起

    我有使用 nms activemq 1 5 0 的 C 应用程序 当我的应用程序启动时 它尝试使用故障转移协议连接到代理 我有两个主从配置的代理 如果两个经纪人都关闭了 我的应用程序就会因为以下原因而陷入等待状态 connection st
  • 流行的源代码控制系统如何区分二进制文件和文本文件

    寻找有关不同源代码控制系统如何区分 或检测 文件类型 二进制与文本 的文章 文档或直观知识 特别令人感兴趣的是 Git 与 Mercurial 相比是如何做到这一点的 他们是否看 文件扩展名 文件签名或内容 即该文件是否为 UTF8 各种东
  • 这个C++宏的含义是什么?

    我不明白这个宏的含义 define DECLARE HANDLE n typedef struct n int i n DECLARE HANDLE HWND 我从中学到了C程序 表示连接参数 所以宏等于 typedef struct HW
  • Silverlight 和 C++ 或 C++ 到 C# 正在进行代码转换吗?

    我正在开发一款基于绘图的产品 我希望按照优先级顺序为 iPhone 桌面 OS X Windows 平板电脑 基于 Silveright 的浏览器 Windows Mobile 和 Windows 生成版本 对于 GUI 可移植性 经典的答
  • AVG 将我的程序检测为病毒。这是怎么回事? [关闭]

    很难说出这里问的是什么 这个问题是含糊的 模糊的 不完整的 过于宽泛的或修辞性的 无法以目前的形式得到合理的回答 如需帮助澄清此问题以便重新打开 访问帮助中心 help reopen questions AVG表示 从下面的代码编译出来的可
  • 使用保留的包名称访问包私有变量

    我正在研究源代码java util HashMap http www java2s com Open Source Java Document 6 0 JDK Core Collections Jar Zip Logging regex j
  • 查看 iOS 中的内存使用情况

    有什么办法可以知道iOS有多少可用内存吗 我知道当可用内存变低时 系统会发出低内存警告 然而 我的应用程序有一些点 单个线程将执行复杂的任务 有时该任务会占用足够的内存 以至于它被操作系统终止 我的应用程序可以从互联网下载图片 我将它们缩小
  • 获取 C 中编译时表达式的值

    有没有办法让 C 编译器 在我的例子中是 XC16 它基于 gcc 转储编译时表达式的结果 我们有很多 define 比如 define FOO 37 6 define FOO BASE 0 035 define FOO FIXEDPOIN
  • 在 UWP 中使用滑动手势

    我已经看到 自最新更新 Windows Fall Creators Update 以来 存在一系列 Swipe 类 但在当前稳定版本的 VS 15 4 1 中 没有办法让它工作 我目前正在使用 Visual Studio 2017 Ente
  • 寻找共同块

    我有两个文件 f1 和 f2 其中包含一些文本 或二进制数据 如何快速找到共同的区块 e g f1 ABC 防御f2 XXABC XEF output 常见块 长度 4 f1 0 和 f2 2 中的 ABC 长度 2 f1 5 和 f2 8
  • 将数组转换为函数参数列表[重复]

    这个问题在这里已经有答案了 是否可以将 JavaScript 中的数组转换为函数参数序列 例子 run render 10 20 200 200 function run calls var app app is retrieved fro
  • 如何获取 DB2 MQT 上次刷新时间

    对于 z OS 上的 DB2 物化查询表 如何检索上次刷新时间 文档指出 http www 01 ibm com support knowledgecenter SSEPEK 10 0 0 com ibm db2z10 doc perf s
  • Windows 8.1 上的 Pyusb - 没有可用的后端 - 如何安装 libusb?

    使用 pyinstaller 3 1 python 2 7 9 和 tkinter 尝试使用 pyusb 而不是 pyserial 但没有可用的后端 调查Windows 上的 Pyusb 没有可用的后端 https stackoverflo
  • 给子例程别名时出现“...仅使用一次:可能的拼写错误”警告

    我有一些模块 想为一些子模块创建别名 这是代码 usr bin perl package MySub use strict use warnings sub new my class shift my params shift my sel