What will be the output of the following C++ code?
#include <iostream>
using namespace std;
template <class T>
inline T square(T x)
{
T result;
result = x * x;
return result;
};
template <>
string square<string>(string ss)
{
return (ss+ss);
};
int main()
{
int i = 4, ii;
string ww("A");
ii = square<int>(i);
cout << i << ii;
cout << square<string>(ww) << endl;
}
#include <iostream>
using namespace std;
template <class T>
inline T square(T x)
{
T result;
result = x * x;
return result;
};
template <>
string square<string>(string ss)
{
return (ss+ss);
};
int main()
{
int i = 4, ii;
string ww("A");
ii = square<int>(i);
cout << i << ii;
cout << square<string>(ww) << endl;
}A. 416AA
B. 164AA
C. AA416
D. AA41A
Answer: Option A

Join The Discussion