Find out the bug in this code,because of that this code
will not compile.......
#include <iostream>
#include <new>
#include <cstring>
using namespace std;
class balance {
double cur_bal;
char name[80];
public:
balance(double n, char *s) {
cur_bal = n;
strcpy(name, s);
}
~balance() {
cout << "Destructing ";
cout << name << "\n";
}
void set(double n, char *s) {
cur_bal = n;
strcpy(name, s);
}
void get_bal(double &n, char *s) {
n = cur_bal;
strcpy(s, name);
}
};
int main()
{
balance *p;
char s[80];
double n;
int i;
try {
p = new balance [3]; // allocate entire array
} catch (bad_alloc xa) {
cout << "Allocation Failure\n";
return 1;
}
Answers were Sorted based on User's Feedback
Answer / pramodsingh_45
this is the key point in c++ when you are allocating entire
array by new operator....you must add parameterless
constructor...
so here is the solution....
add this...within the class.
balance() {}//parameterless constructor
and be happy..... :)
Is This Answer Correct ? | 5 Yes | 0 No |
What is the difference between static link library and dynamic link library?
What are the rules for naming an identifier?
Which operations are permitted on pointers?
Do the parentheses after the type name make a difference with new?
Can a function take variable length arguments, if yes, how?
What is the latest version on c++?
Explain the difference between c++ and java.
what is static function
What is compilation?
Explain the differences between private, public and protected and give examples.
Does c++ have arraylist?
What is an accessor in c++?