问题
I have code like this:
template <typename T, typename U> struct MyStruct {
T aType;
U anotherType;
};
class IWantToBeFriendsWithMyStruct
{
friend struct MyStruct; //what is the correct syntax here ?
};
What is the correct syntax to give friendship to the template ?
回答1:
class IWantToBeFriendsWithMyStruct
{
template <typename T, typename U>
friend struct MyStruct;
};
Works in VS2008, and allows MyStruct to access the class.
回答2:
According to this site, the correct syntax would be
class IWantToBeFriendsWithMyStruct
{
template <typename T, typename U> friend struct MyStruct;
}
来源:https://stackoverflow.com/questions/206045/how-do-you-mark-a-struct-template-as-friend