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 = 2, 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 = 2, ii;
string ww("A");
ii = square<int>(i);
cout << i << ": " << ii;
cout << square<string>(ww) << ":" << endl;
}A. 2: 4AA:
B. 2:4
C. AA
D. 2:4A
Answer: Option A

Join The Discussion