1
A
回答
0
使用包在模塊中構建單獨的名稱空間,因此可以避免此類問題。包語句將編譯單元聲明爲在給定的名稱空間中。 This link可能會幫助你。
2
這應該在這裏說明一些問題。
測試腳本
#!/usr/bin/perl
use warnings;
use strict;
# import 'print_stuff' from TestPackage
# so you can call this sub without package name
use TestPackage qw(print_stuff);
my $string = "whatever";
TestPackage::print_stuff($string);
print_stuff($string);
sub print_stuff {
my $str = shift;
print "test.pl: $str\n";
}
測試包
package TestPackage;
# Export subs, which will enable you to call these
# subs without package name(TestPackage)
require Exporter;
@ISA = qw(Exporter);
@EXPORT_OK = qw(print_stuff);
sub print_stuff {
my $str = shift;
print "TestPackage: $str\n";
}
1;
輸出:
$ test.pl
TestPackage: whatever
test.pl: whatever
相關問題
- 1. perl命名子程序中的匿名子程序
- 2. Git衝突(重命名/重命名)
- 3. 命名空間+類命名衝突
- 4. 命名空間衝突
- 5. 函數命名衝突
- 6. java命名空間衝突
- 7. Javascript命名空間衝突
- 8. 與EntityFramework的命名衝突
- 9. WCF FaultException命名衝突
- 10. Fortran命名空間衝突
- 11. 與CPAN的Perl名稱衝突
- 12. 有沒有辦法預先命名衝突的Python程序?
- 13. 命名空間中的類名衝突
- 14. 別名和命名空間衝突
- 15. PHP命名空間別名衝突?
- 16. 別名衝突命名空間c#
- 17. 域名中的Cookie衝突 - 子域名
- 18. Eclipse RCP - 用於ltk重命名命令的衝突處理程序
- 19. 衝突的命名空間在C#
- 20. 命名空間與類衝突
- 21. XML DOM衝突命名空間問題
- 22. Castle Windsor命名空間衝突
- 23. 在類文件中命名衝突
- 24. 重命名錶格後衝突警告
- 25. 在Django模板中命名衝突
- 26. 其他的庫#define命名衝突
- 27. 解決腳本#命名衝突
- 28. React VR「jest-haste-map:@providesModule命名衝突」
- 29. 混帳合併重命名衝突
- 30. Groovy gdk命名空間衝突