Explain the difference between use and require?
Answers were Sorted based on User's Feedback
Answer / kush
Use :
1. The method is used only for the modules(only to include
.pm type file)
2. The included objects are varified at the time of compilation.
3. No Need to give file extension.
Require:
1. The method is used for both libraries and modules.
2. The included objects are varified at the run time.
3. Need to give file Extension.
| Is This Answer Correct ? | 38 Yes | 6 No |
Answer / gopi sreekanth
use can take a bareword and require doesnot while accessing
module
use is used in compile time ie all code is parsed before
program run where as require is used in run time. So if
there is much code in initialization include that in use
rather than require
use supports import method by default and require doesnt
support
Inside use default import method will be present. BEGIN {
require Module; }
| Is This Answer Correct ? | 2 Yes | 1 No |
Answer / goyal
Please refer:
http://www.techopes.com/2014/09/difference-between-use-and-require-in.html
| Is This Answer Correct ? | 2 Yes | 1 No |
Answer / vipul dalwala
- a require statement imports the functions and objects
only within their defined packages. The use keyword, on the
other hand, imports the functions and objects so they are
available to the current package as if they had been
defined globally. For example,
require Cwd;
$pwd = Cwd::getcwd();
as opposed to
use Cwd;
$pwd = getcwd();
- use statements are interpreted and executed at the time
the file is parsed, but require statements import modules
at run time, which means you can supply a variable name to
a require statement based on other elements of your program.
| Is This Answer Correct ? | 9 Yes | 9 No |
The use statement works at compile time, require at run
time. So if you have a module that does a lot in a begin
block and you don't really need it in all cases, then it's
clever to "require" it there where you want to use it but
don't "use" it. So you don't have to wait for all that
initializations of that module in case you don't need it.
| Is This Answer Correct ? | 5 Yes | 5 No |
How would you trap error occurred in the perl program/file?
How to access parameters passed to a subroutine in perl?
Consider the following example #! /bin/perl use strict; sub sample { my @arr=(1,2,3,4); return @arr; } my ($a,$b,$c,$d) = &sample; print "$a\n$b\n$c\n$d\n"; In the above code, How can I get the $c without using the arguments such as $a,$b. I don't want to use any array to get the return values.
What is the purpose of _package_ literal?
What is the use of -w, -t and strict in Perl?
How to implement a stack in Perl?
What do the symbols $ @ and % mean when prefixing a variable?
You want to open and read data files with perl. How would you do that?
How will you create a file in perl?
“The methods defined in the parent class will always override the methods defined in the base class”. What does this statement means?
What is q (single q) operator in perl?
What is the peculiarity of returning values by subroutines in perl?