what is difference between static and non-static variables
Answers were Sorted based on User's Feedback
Answer / sv
static variable retains its value like a global variable,
but visible with in the scope.
While non static variable will not be retained one it come
out of the scope or block. Again the visibility is local to
the block.
Is This Answer Correct ? | 53 Yes | 8 No |
Answer / udit rawat
static variable take memory first at linking and loading time
while non static variable take memory at compile time
Is This Answer Correct ? | 35 Yes | 11 No |
Answer / mahesh_b.tech@2008
Non-static variables:
Instance block can be executed automatically when you were
creating the object.
Instance variables can be called by using with the object.
Instance variables can not called by using the class name.
memory will be alocated for instanse variables when you
create the object.
Static variables:
static block will be executed automatically when jvm(Java
Virtual Machine)loading the class into memory.
static varisble can be called using both objectname&class
name.
memory will be allocated when jvm loads the class.
Is This Answer Correct ? | 13 Yes | 4 No |
Answer / sengar
static variable will not be change value all time but non
static value can be changed according requirement .
without giving any value static variable automatically
initialize by zero but in non-static case not the same
case.
Is This Answer Correct ? | 11 Yes | 2 No |
Answer / daxini
Static :
A static variable is defined for the class itself and exists independently of any object of that class.
non-static:
a non static variable is defined for object of the class thus it is bound to an instance of its class
Is This Answer Correct ? | 10 Yes | 2 No |
Answer / narender vadhava
static variables have their fix values within a program but
in case of non-static variables their values are changable
within the same program.
syntax of static variable:-
static int s;
while
non static variables declared only by using general basic
data type.
as:-
int s;
Is This Answer Correct ? | 14 Yes | 12 No |
Answer / arun kumar
Initialization of static variables is at compile time,
but in case of non-static variables is at run time.
Is This Answer Correct ? | 6 Yes | 7 No |
Answer / basharat ali
satatic variable use any where but non-static variable can
use with in a block..............
Is This Answer Correct ? | 2 Yes | 6 No |
Answer / achal ubbott
The above answers are correct. A local static variable is
stored in heap. But a local variable is stored onto stack.
A Global variable made static can't be accessed from a
function outside the file using extern. So it limits the
scope.
Is This Answer Correct ? | 2 Yes | 10 No |
Is there a datatype string in c++?How is the memory allocation?
Write some differences between an external iterator and an internal iterator? Describe the advantage of an external iterator.
What is a set in c++?
What is the purpose of decltype?
What is wrapper class in c++?
Explain how functions are classified in C++ ?
How can you force instantiation of a template?
Should I learn c++ c?
Are php strings immutable?
What do you mean by const correctness?
Where and why do I have to put the "template" and "typename" keywords?
What is a block in c++?