Last Updated on October 18, 2019 by Admin
CPA Chapter 8 Assessment Answers 100%
-
What happens when you attempt to compile and run the following code?
#include <iostream>
using namespace std;
class Int {
public:
int v;
Int(int a) { v = a; }
};int main() {
Int i = 1;
cout << i;
return 0;
}- It prints 0
- It prints 1
- Compilation fails
- It prints 2
-
What happens when you attempt to compile and run the following code?
#include <iostream>
using namespace std;
class Int {
public:
int v;
Int(int a) { v = a; }
};ostream &operator <<(Int &a) {
return cout << a.v;
}int main() {
Int i = 1;
cout << i;
return 0;
}- Compilation fails
- It prints 1
- It prints 0
- It prints 2
-
What happens when you attempt to compile and run the following code?
#include <iostream>
using namespace std;
class Int {
public:
int v;
Int(int a) { v = a; }
};ostream &operator <<(ostream &o, Int &a) {
return o << –a.v;
}int main() {
Int i = 1;
cout << i;
return 0;
}- It prints 1
- It prints 0
- It prints 2
- Compilation fails
-
What happens when you attempt to compile and run the following code?
#include <iostream>
using namespace std;
class Int {
public:
int v;
Int(int a) { v = a; }
Int &operator–() {
++v;
return *this;
}
};ostream &operator <<(ostream &o, Int &a) {
return o << –a.v;
}int main() {
Int i = 2;
cout << i;
return 0;
}- Compilation fails
- It prints 2
- It prints 1
- It prints 0
-
What happens when you attempt to compile and run the following code?
#include <iostream>
using namespace std;
class Int {
public:
int v;
Int(int a) { v = a; }
Int &operator–() {
++v;
++v;
return *this;
}
};ostream &operator <<(ostream &o, Int &a) {
return o << a.v++;
}int main() {
Int i = 0;
cout << –i;
return 0;
}- It prints 2
- Compilation fails
- It prints 0
- It prints 1
-
What happens when you attempt to compile and run the following code?
#include <iostream>
using namespace std;
class Int {
public:
int v;
Int(int a) { v = a; }
Int &operator–() {
++v;
return *this;
}
Int &operator–(int v) {
v+=2;
return *this;
}};
ostream &operator <<(ostream &o, Int &a) {
a.v++;
return o << a.v;
}int main() {
Int i = 0;
–i ; i–;
cout << i << i;
return 0;
}- It prints 23
- It prints 21
- It prints 12
- It prints 10
- Compilation fails
-
What happens when you attempt to compile and run the following code?
#include <iostream>
using namespace std;
class Int {
public:
int v;
Int(int a) { v = a; }
Int &operator++(int x) {
v+=2;
return *this;
}};
ostream &operator <<(ostream &o, Int &a) {
return o << a.v;
}int main() {
Int i = 0;
i++;
cout << i << i.v;
return 0;
}- It prints 20
- It prints 22
- It prints 21
- Compilation fails
-
What happens when you attempt to compile and run the following code?
#include <iostream>
using namespace std;
class Int {
public:
int v;
Int(int a) { v = a; }
Int &operator[](int x) {
v+=x;
return *this;
}};
ostream &operator <<(ostream &o, Int &a) {
return o << a.v;
}int main() {
Int i = 2;
cout << i.v ;
cout << i[2];
return 0;
}- It prints 44
- It prints 24
- It prints 22
- It prints 33
- Compilation fails
-
What happens when you attempt to compile and run the following code?
#include <iostream>
using namespace std;
enum T { A, B, C };
class Int {
public:
T v;
Int(T a) { v = a; }};
ostream &operator <<(ostream &o, Int &a) {
return o << a.v;
}int main() {
Int i = B;
cout << i;
return 0;
}- Compilation fails
- It prints 0
- It prints B
- It prints 1
-
What happens when you attempt to compile and run the following code?
#include <iostream>
using namespace std;
enum T { A = 2, B = -1, C };
class Int {
public:
T v;
Int(T a) { v = a; }
Int & operator++() { v = C; return *this; }
};ostream &operator <<(ostream &o, Int &a) {
++a;
return o << a.v;
}int main() {
Int i = B;
cout << i;
return 0;
}- It prints C
- It prints 0
- Compilation fails
- It prints 1
-
What happens when you attempt to compile and run the following code?
#include <iostream>
using namespace std;
enum T { A = 2, B = -1, C };
class Int {
public:
T v;
Int(T a) { v = a; }
Int & operator++() { v += 2; return *this; }
};ostream &operator <<(ostream &o, Int &a) {
++a;
return o << a.v;
}int main() {
Int i = B;
cout << i;
return 0;
}- It prints 0
- Compilation fails
- It prints 1
- It prints 2
-
What happens when you attempt to compile and run the following code?
#include <iostream>
using namespace std;
enum T { A = 2, B = -1, C };
T operator+(T t, int i) {
switch(t) {
case A: return T(0);
case B: return static_cast<T>(2);
default:return (T)1;
}
}int main() {
T i = A + 2;
cout << i;
return 0;
}- It prints 2
- Compilation fails
- It prints 1
- It prints 0
-
What happens when you attempt to compile and run the following code?
#include <iostream>
using namespace std;
class N {
public:
float x;
N() { x = 0.0; }
N(float a) { x = a; }
N(N &n) { x = n.x; }
N &operator%(N &y) { return *new N((int)x % (int)y.x); }
};int main() {
N a(2.0),b(4.0);
N c = a % b;
cout << c.x;
return 0;
}- Compilation fails
- It prints 2
- It prints 0
- It prints 1
-
What happens when you attempt to compile and run the following code?
#include <iostream>
using namespace std;
class N {
public:
float x;
N() { x = 0.0; }
N(float a) { x = a; }
N(N &n) { x = n.x; }
N &operator<<(N &y) { return *new N(x * 10); }
};int main() {
N a(2.0),b(4.0);
N c = a << 1;
cout << c.x;
return 0;
}- It prints 2
- It prints 0
- It prints 1
- Compilation fails
-
What happens when you attempt to compile and run the following code?
#include <iostream>
using namespace std;
class N {
public:
float x;
N() { x = 0.0; }
N(float a) { x = a; }
N(N &n) { x = n.x; }
};N &operator=(N &y,float f) { return *new N(f); }
int main() {
N a;
a = 2.0;
cout << a.x;
return 0;
}- Compilation fails
- It prints 2
- It prints 1
- It prints 0
-
What happens when you attempt to compile and run the following code?
#include <iostream>
using namespace std;
class N {
public:
float x;
N() { x = 0.0; }
N(float a) { x = a; }
N(N &n) { x = n.x; }
N &operator=(float f) { x = f – 1; return *this; }
};int main() {
N a;
a = 2.0;
cout << a.x;
return 0;
}- It prints 2
- It prints 0
- It prints 1
- Compilation fails
-
What happens when you attempt to compile and run the following code?
#include <iostream>
#include <string>using namespace std;
class N {
public:
float x;
N() { x = 0.0; }
N(float a) { x = a; }
N(N &n) { x = n.x; }
string operator==(float f) { if(int(x) == int(f)) return “true”; else return “false”; }
};int main() {
N a(1.1);
cout << (a == 1.9);
return 0;
}- It prints true
- It prints an empty string
- Compilation fails
- It prints false
-
What happens when you attempt to compile and run the following code?
#include <iostream>
using namespace std;
string operator>(float l, float r) { if(int(l) > int(r)) return “true”; else return “false”; }
int main() {
float l = 2.0, r=2.9999;
cout << (l > r);
return 0;
}- It prints true
- Compilation fails
- It prints an empty string
- It prints false
-
What happens when you attempt to compile and run the following code?
#include <iostream>
#include <string>using namespace std;
class N {
public:
float x;
N() { x = 0.0; }
N(float a) { x = a; }
N(N &n) { x = n.x; }
string operator==(N &n) { if(this != &n) return “true”; else return “false”; }
};int main() {
N a(1.1), *b = &a;
cout << (a == *b);
return 0;
}- It prints true
- Compilation fails
- It prints false
- It prints an empty string
-
What happens when you attempt to compile and run the following code?
#include <iostream>
#include <string>
using namespace std;
class X {
public:
string n;
X(string s) : n(s) {}
void operator() (X x) {
cout << x.n;
}
};
int main(void) {
X x(“a”),y(“b”);
x(y);
y(x);
return 0;
}- It prints ba
- Compilation fails
- It prints an empty string
- It prints ab