我正面临着sprintf的一个严重问题.
假设我的代码片段是:
sprintf(Buffer,"Hello World");
sprintf(Buffer,"Good Morning");
sprintf(Buffer,"Good Afternoon");
.
.
.
Run Code Online (Sandbox Code Playgroud)
几百个短跑......
如果我这样做,它会被覆盖.
如何避免使用sprintf覆盖.如果我在最后给出printf,我想看到所有的线条.
虽然我不是Perl大师,但我使用Perl,我可以用"好老"的方式编写面向对象的程序.
现在我想学习穆斯.我已经(所以)咀嚼了基本文档,我的第一个Moose和角色已经在工作了,但我距离了解Moose实际上是如何工作的还有几英里远.
问题1:是否有必要了解Moose如何撰写"相当不错"的节目?
老实说,我不太了解旧的对象系统.我依旧记得读到的东西是它实际上是对数据结构的引用,但我从未深入探索过.这是足以让我知道如何和何时我需要使用bless,autoload等等,事情简单的工作.也许我的一些旧模块可以更有效地编写.但对我来说,他们的工作和工作都很好.
这与穆斯相似吗?或者有人用Moose写"足够好"的程序需要了解它是如何在"内部"工作的吗?
问题出现的原因如下:
在METACPAN中有许多模块可以帮助编写Moose对象更加简单和简单.
随机的例子:
还有很多(不想在这里引用另外10-20个模块)
现在主要问题是:
是否有任何好的书籍,其中包含以下说明,示例和建议(良好做法):
上述模块肯定不是因为作者根本没有做什么而开发的.当然,它们是有用的和有用的.但是学习(阅读:试图理解)数十个不同的模块(特别是那些与Moose内部玩耍的模块)是一个非常漫长的过程.另一方面,如果不使用它们,我的程序将不必要地复杂化,我将处理已经解决的问题.
穆斯应该(并且可能是)一个革命性的体系.只有我开始迷路了.
编辑:我刚刚找到了驯鹿.可能这个模块是问题的部分答案: 从一开始(或大部分时间)使用哪些模块是有用的
PS:我不确定这个问题是否可以.如果没有,请将它移到某处或关闭它.我在这里问过,因为SO-perl社区是一个非常有用的地方,我不知道如何继续学习Moose.
我想给自己一个学习WPF的目标.告诉必须通过的证书,以确保我知道WPF.
我对免费和付费证书感兴趣.
用户控制 - 它们是否有特殊用途?
据我所知,它们与表单没有什么不同 - 它们具有相同的工具箱和功能.
是否有某些时候它们适合用于表格?了解它们有什么好处会很有趣.
我在Actionscript 3中有一个布尔变量.
我如何检查它是否未定义(不是假),因为false是一个值或者在Actionscript中的布尔值默认为FALSE>
我试图在单个Perl脚本中排除对Perl Critic的RequireRcsKeywords的检查.我不想在.perlcriticrc中更改我的默认策略,所以我在源代码的顶部添加了一个"no critic"行.尽管有这样的改变,Perl Critic仍然抱怨缺乏RCS关键词.
这是我的测试用例(critictest.pl):
#!/usr/bin/perl
## no critic (RequireRcsKeywords)
use warnings;
use strict;
print "Hello, World.\n";
Run Code Online (Sandbox Code Playgroud)
当我执行时,perlcritic -1 --verbose 8 critictest.pl我得到以下输出:
[Miscellanea::RequireRcsKeywords] RCS keywords $Id$ not found at line 1, column 1. (Severity: 2)
[Miscellanea::RequireRcsKeywords] RCS keywords $Revision$, $HeadURL$, $Date$ not found at line 1, column 1. (Severity: 2)
[Miscellanea::RequireRcsKeywords] RCS keywords $Revision$, $Source$, $Date$ not found at line 1, column 1. (Severity: 2)
[Modules::RequireVersionVar] No package-scoped "$VERSION" variable found at line 1, column 1. (Severity: 2) …Run Code Online (Sandbox Code Playgroud) 有没有办法测量脚本的POD覆盖范围(例如*.pl)?
我可以使用和测量软件包的文档覆盖率,但是我无法测量它的脚本,因为检查软件包内容的基本用法是由于缺少文件而失败.Pod::CoverageTest::Pod::CoveragePod::CoverageDevel::Symdumprequire.pm
有办法解决这个问题吗?
(我必须在文件中包含POD文档.pl,因此将所有内容移动到模块中并将其记录在那里对我来说并不是一个好的解决方案.无论我在哪里,它都已经这样做了.)
我希望有人可以帮我解决以下问题:
Function Get-FormattedNameValuePair([string] $name, [object] $value)
{
return "$("{0,-24}" -f $name) : $("{0,15:N2}" -f $value)"
}
Write-Output (Get-FormattedNameValuePair -name MyField -value 1234)
Run Code Online (Sandbox Code Playgroud)
以上回报:
MyField : 1234
Run Code Online (Sandbox Code Playgroud)
然而,我期待着:
MyField : 1,234.00
Run Code Online (Sandbox Code Playgroud)
如果我在1234周围添加评估括号,则会正确返回预期结果:
Write-Output (Get-FormattedNameValuePair -name MyField -value (1234))
Run Code Online (Sandbox Code Playgroud)
如果直接调用而不是包含在"Get-FormattedNameValuePair"函数中,则格式化也可以在没有评估括号的情况下工作.
[string] $name = "MyField"
[object] $value = 1234
Write-Output "$("{0,-24}" -f $name) : $("{0,15:N2}" -f $value)"
Run Code Online (Sandbox Code Playgroud)
任何人都能解释上面的行为吗?
perl ×3
.net ×1
actionscript ×1
adobe ×1
boolean ×1
c ×1
c# ×1
casting ×1
certificate ×1
evaluation ×1
moose ×1
pdf ×1
perl-critic ×1
pod ×1
powershell ×1
printf ×1
sqlite ×1
wpf ×1