Which is the only operator in C++ which can be overloaded
but NOT inherited?
Answers were Sorted based on User's Feedback
Answer / kalaivani
the '='(equal) operater can be overloaded but cannot be
inherited
Is This Answer Correct ? | 82 Yes | 1 No |
Answer / anban
basically "=" is the operator that cannot be inherited but
can
be overloaded..hope u got it.
Is This Answer Correct ? | 37 Yes | 0 No |
Answer / smita
"="this is the operator in C++ that can be overloaded but Not inherited
Is This Answer Correct ? | 20 Yes | 2 No |
Answer / lokesh
"=" is the only operator which can be overloaded but can not
be inherited
Is This Answer Correct ? | 12 Yes | 2 No |
Answer / sharathnasa
#include <iostream>
#include <iomanip>
using namespace std;
class A {
public:
int _i;
A(int i) : _i(i) { }
virtual A &operator=(A const &other) {
if (this!=&other) {
_i = other._i;
}
return *this;
}
virtual A operator+(A const &rvalue) {
return A(_i + rvalue._i);
}
virtual void print() {
cout << "A(_i=" << _i << ")";
}
};
class B : public A {
public:
int _j;
B(int i, int j) : A(i), _j(j) { }
virtual void print() {
cout << "B(_i=" << _i << ", _j=" << _j <<")";
}
};
int main() {
A a1(5), a2(3);
a1.print();
cout << " + ";
a2.print();
cout << " = ";
A a3 = a1 + a2;
a3.print();
cout << endl;
B b1(5,3), b2(3,5);
b1.print();
cout << " + ";
b2.print();
cout << " = ";
// this works, although (b1+b2) returns an A since it uses
A's operator+
(b1+b2).print();
// this does not work: no conversion from A to B, i.e.
operator= not inherited
// B b3 = b1 + b2;
// b3.print();
cout << endl;
return 0;
}
Is This Answer Correct ? | 0 Yes | 0 No |
Answer / hellboy
'this' operator. I mean the operator that is called as 'this'
Is This Answer Correct ? | 2 Yes | 13 No |
What are constructors in oop?
WAP to generate 2n+1 lines of the following pattern on the computer screen:
What is the differances between a abstract calss and interface
#include <string.h> #include <stdio.h> #include <stdlib.h> #include <conio.h> void select(char *items, int count); int main(void) { char s[255]; printf("Enter a string:"); gets(s); select(s, strlen(s)); printf("The sorted string is: %s.\n", s); getch(); return 0; } void select(char *items, int count) { register int a, b, c; int exchange; char t; for(a = 0; a < count-1; ++a) { exchange = 0; c = a; t = items[ a ]; for(b = a + 1; b < count; ++b) { if(items[ b ] < t) { c = b; t = items[ b ]; exchange = 1; } } if(exchange) { items[ c ] = items[ a ]; items[ a ] = t; } } } design an algorithm for Selection Sort
What is encapsulation c#?
When a private constructer is being inherited from one class to another class and when the object is instantiated is the space reserved for this private variable in the memory??
why constructor cannt be declar virtually? why destructor cannt be overloaded?
difference between static and non-static variables?
Why static functions always uses static variables?
which structured data type is not used in c++? 1.union 2.structure 3.string 4.boolean
explain dynamic binding by drowing
what are the ways in which a constructors can be called?