Coercion and overloading

Programming
Tutor: None Selected Time limit: 1 Hour

Consider an unknown language with integer and real types in which 1+2, 1.0+2, 1+2.0, and 1.0+2.0 are all legal expressions.

a. Explane how ths could be the result of coercion, using no overloading.

b. Explane how this could be the result of overloading, using no coercion.

c. Explane how this could result from a combination of overloading and coercion.

d. Explane how this could result from subtype polymorphism, with no overloading or coercion.


Oct 2nd, 2013
#include <string>

class PlMessageHeader
{
std::string m_ThreadSender;
std::string m_ThreadReceiver;

//return true if the messages are equal, false otherwise
inline bool operator == (const PlMessageHeader &b) const
{
return ( (b.m_ThreadSender==m_ThreadSender) &&
(b.m_ThreadReceiver==m_ThreadReceiver) );
}

//return true if the message is for name
inline bool isFor (const std::string &name) const
{
return (m_ThreadReceiver==name);
}

//return true if the message is for name
inline bool isFor (const char *name) const
{
return (m_ThreadReceiver==name);// since name type is std::string, it becomes unsafe if name == NULL
}
};
Oct 5th, 2013

Are you studying on the go? Check out our FREE app and post questions on the fly!
Download on the
App Store
...
Oct 2nd, 2013
...
Oct 2nd, 2013
Dec 8th, 2016
check_circle
Mark as Final Answer
check_circle
Unmark as Final Answer
check_circle
Final Answer

Secure Information

Content will be erased after question is completed.

check_circle
Final Answer