最近我使用chilkat perl库发送电子邮件
http://www.example-code.com/perl/smtp_simpleSend.asp
当我创建新对象
时use chilkat();
# The mailman object is used for sending and receiving email.
$mailman = new chilkat::CkMailMan();
$mailman->put_SmtpHost("smtp.chilkatsoft.com");
# Set the SMTP login/password (if required)
$mailman->put_SmtpUsername("myUsername");
$mailman->put_SmtpPassword("myPassword");
当我尝试使用Dumper方法打印对象时,它什么都不返回。
print Dumper($mailMan);
$VAR1 = bless( {}, 'chilkat::CkMailMan' );
我们如何隐藏上述祝福对象中的数据?
答案 0 :(得分:6)
看看代码。它使用DynaLoader加载C库(在Windows上为dll)。其余的只是构造函数。属性(如SmptHost
)不保存在Perl数据结构中。它只是传递给C函数调用。我甚至不确定你可以同时拥有几个不同的物体。这就是为什么在祝福哈希中没有任何东西。
您不能只隐藏数据。普通的Perl对象中没有私有方法。始终有办法获得这些东西。有些对象框架使得使用Data :: Dumper序列化它变得更加困难,但这不是这些的目的。例如,查看Class::Std::Fast::Storable。