I am just trying to understand the virtual fns. concept.
I know that if I have a virtual fn. in a base class and its overridden fn. in derived class then based upon the address of base/derived object stored in the base class pointer the fns. will be called.
In the below code I had kept the show() fn. as virtual and it used to call properly the base and derived classes show().
But when I removed the virtual tag from show() then why does not it calls derived show() inspite of base class pointer having address of derived class object?
Output of code:
Last edited by rupeshkp728; 11-08-2011 at 08:54 AM..
Reason: added tags around code
Not really a newbie, but I have a strange problem and I'm not sure how to further troubleshoot it.
I have to log out of a virtual terminal by typing exit, then exit again as in:
woodnt@toshiba-laptop ~ $ exit
logout
woodnt@toshiba-laptop ~ $ exit
logout
I DON'T have to do this when I'm... (1 Reply)
First of all I have performed a Google search and internal search and found several descriptions but nothing I can wrap my head around and feel 100% confident about.
I feel really silly for asking this as I manage a P6 570 with 12 lpars but I have difficulity with Virtual Processors.
I can... (3 Replies)
I learn using RS in awk to extract portion of file in this forum which is wonderful solution to the problem. However, I don't understand how exactly it operates.
I don't quite understand the mechanism behind how searching for /DATA2/ can result in extracting the whole section under "DATA2"
... (3 Replies)
Trying to set or modify the randomly set hostID of a Solaris 10 virtual/guest machine that I installed on a Windows-XP host machine (using Virtual Box 4.1.12).
I was able to set/modify the hostname of the Solaris 10 virtual/guest machine during installation as well as via the Virtual Box... (4 Replies)
I have 7 functions those need to be executed as command line inputs, I tried with below code it’s not executing function. If I run the ./script 2 then fun2 should execute , how to initiate that function I tried case and if else also, how to initiate function from command line
if
then... (8 Replies)
Hello,
Long-time Unix hacker here - I've worked on four variants of the kernel prior to the introduction of Linux. In my spare time, I've written Linux (Ubuntu) device drivers, kernel modules, cross-compiled, and built the kernel.
I'd like to do Linux internals/device drivers as a day job,... (1 Reply)
Hi All,
Is there any way I can prioritize my VMs when there is resource crunch in host machine so that some VMs will be allocated more vcpu, more memory than other VMs in kvm/qemu hypervisor based virtual machines?
Lets say in my cloud environment my Ubuntu 16 compute hosts are running some... (0 Replies)
Discussion started by: SanjayK
0 Replies
LEARN ABOUT DEBIAN
mojo::base
Mojo::Base(3pm) User Contributed Perl Documentation Mojo::Base(3pm)NAME
Mojo::Base - Minimal base class for Mojo projects
SYNOPSIS
package Cat;
use Mojo::Base -base;
has 'mouse';
has paws => 4;
has [qw(ears eyes)] => 2;
package Tiger;
use Mojo::Base 'Cat';
has stripes => 42;
package main;
use Mojo::Base -strict;
my $mew = Cat->new(mouse => 'Mickey');
say $mew->paws;
say $mew->paws(5)->ears(4)->paws;
my $rawr = Tiger->new(stripes => 23);
say $rawr->ears * $rawr->stripes;
DESCRIPTION
Mojo::Base is a simple base class for Mojo projects.
# Automatically enables "strict", "warnings" and Perl 5.10 features
use Mojo::Base -strict;
use Mojo::Base -base;
use Mojo::Base 'SomeBaseClass';
All three forms save a lot of typing.
# use Mojo::Base -strict;
use strict;
use warnings;
use feature ':5.10';
# use Mojo::Base -base;
use strict;
use warnings;
use feature ':5.10';
use Mojo::Base;
push @ISA, 'Mojo::Base';
sub has { Mojo::Base::attr(__PACKAGE__, @_) }
# use Mojo::Base 'SomeBaseClass';
use strict;
use warnings;
use feature ':5.10';
require SomeBaseClass;
push @ISA, 'SomeBaseClass';
use Mojo::Base;
sub has { Mojo::Base::attr(__PACKAGE__, @_) }
FUNCTIONS
Mojo::Base exports the following functions if imported with the "-base" flag or a base class.
"has"
has 'name';
has [qw(name1 name2 name3)];
has name => 'foo';
has name => sub {...};
has [qw(name1 name2 name3)] => 'foo';
has [qw(name1 name2 name3)] => sub {...};
Create attributes, just like the "attr" method.
METHODS
Mojo::Base implements the following methods.
"new"
my $object = BaseSubClass->new;
my $object = BaseSubClass->new(name => 'value');
my $object = BaseSubClass->new({name => 'value'});
This base class provides a basic object constructor. You can pass it either a hash or a hash reference with attribute values.
"attr"
$object->attr('name');
BaseSubClass->attr('name');
BaseSubClass->attr([qw(name1 name2 name3)]);
BaseSubClass->attr(name => 'foo');
BaseSubClass->attr(name => sub {...});
BaseSubClass->attr([qw(name1 name2 name3)] => 'foo');
BaseSubClass->attr([qw(name1 name2 name3)] => sub {...});
Create attributes. An array reference can be used to create more than one attribute. Pass an optional second argument to set a default
value, it should be a constant or a sub reference. The sub reference will be excuted at accessor read time if there's no set value.
DEBUGGING
You can set the "MOJO_BASE_DEBUG" environment variable to get some advanced diagnostics information printed to "STDERR".
MOJO_BASE_DEBUG=1
SEE ALSO
Mojolicious, Mojolicious::Guides, <http://mojolicio.us>.
perl v5.14.2 2012-09-05 Mojo::Base(3pm)