
January 15th, 2009, 04:20 PM
|
 |
Unholy Moderator
|
|
Join Date: Oct 2003
Location: In hell, where did you think?
|
|
Quote: | Originally Posted by Athono What is the equivalant of a 'friend' keyword in C Sharp? |
There is not direct equivalent of "friend" in C#. Internal is pretty close though.
Quote: | Originally Posted by Athono
How do I use the 'internal' keyword?
|
Code:
public class BaseClass
{
// Only accessible within the same assembly
internal static int x = 0;
}
Quote: | Originally Posted by Athono
I have read that 'internal' keyword is a replacement for 'friend' in C#. |
No, it isn't. It's similar but not a direct replacement.
Quote: | Originally Posted by Athono
I am using a dll in my C# project that I have the source code for and yet I do not want to modify the existing code. I have inherited the class and I can use my inherited class any way I want. The problem is that most of the code in the parent class has private methods. Will using a friend somehow make it possible to access or call these private methods?
|
The "friend" / "internal" access identifier means the methods/variables/etc... are only accessible from within the assembly itself. So if it's in a dll and you are referencing that dll you can't access them. It would have to be public instead.
Quote: | Originally Posted by Athono
I have been dold that if I have inherited from a base class, I should be able to access all the protected methods from the inheriting class. Therefore I should not need any "friend" equivalent. But does that also hold true for private methods?
|
No, private methods are private to that class only.
|