Perl中lvalue子例程的用途是什么?
发布时间:2020-12-15 21:12:33 所属栏目:大数据 来源:网络整理
导读:我不明白Lvalue子例程的用途是什么?我用普通子程序不能完成什么?你能举几个例子吗? 谢谢 解决方法 建议避免使用.他们很有趣,但他们混淆了新用户,他们假设所有的内容都是有效的,因此,当有更好的方法可以避免代码. 有时使用LValue结果做脏事可能非常实用. s
我不明白Lvalue子例程的用途是什么?我用普通子程序不能完成什么?你能举几个例子吗?
谢谢 解决方法
建议避免使用.他们很有趣,但他们混淆了新用户,他们假设所有的内容都是有效的,因此,当有更好的方法可以避免代码.
有时使用LValue结果做脏事可能非常实用. substr( $string,$start,$stop ) = 'somevalue' # replaces the specified part of the substring. 但是,这也同样如此: substr( $string,$stop,'somevalue' ); 这里的差异大多是前者具有显着的更强大的力量,因为它将行为委托给使用它的代码而不是函数本身. 例如: substr( $string,$stop ) =~ s/a/b/g 需要你做 my $x = substr( $string,$stop ); $x =~ s/a/b/g/; substr( $string,$x ); 这有点讨厌 虽然这里还有一个令人讨厌的问题,因为您必须考虑是否以$x作品替代,以追溯方式修改字符串(由于substr是一个LValue子).我不认为它是,但它的含糊不清,我必须检查手册,以记住是否与否,这是坏的. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |