PRIVATE: (Access Control)
Specifies private member access control in a Type or Class
Syntax:
Parameters:
typename
member declarations
member declarations
declarations for fields, functions, or enumerations
Description:
Private: indicates that member declarations following it have private access.
Private members are accessible only from inside a member procedure of their Type or Class. Seen from inside such a member procedure, it is as if the protected member is in fact public, and that regardless of the object on which the access operator is applied.
member declarations following Private: are private until a different access control specifier is given, like Public: or Protected:.
Members in a Type declaration are Public: by default if no member access control specifier is given.
Private members are accessible only from inside a member procedure of their Type or Class. Seen from inside such a member procedure, it is as if the protected member is in fact public, and that regardless of the object on which the access operator is applied.
member declarations following Private: are private until a different access control specifier is given, like Public: or Protected:.
Members in a Type declaration are Public: by default if no member access control specifier is given.
Examples:
Type testing
number As Integer
Private:
nome As String
Declare Sub setNome( ByRef newnome As String )
End Type
Sub testing.setnome( ByRef newnome As String )
'' This is OK. We're inside a member function for the type
This.nome = newnome
End Sub
Dim As testing myVariable
'' This is OK, number is public
myVariable.number = 69
'' this would generate a compile error
'' - nome is private and we're trying to access it outside any of this TYPE's member functions
'' myVariable.nome = "FreeBASIC"
number As Integer
Private:
nome As String
Declare Sub setNome( ByRef newnome As String )
End Type
Sub testing.setnome( ByRef newnome As String )
'' This is OK. We're inside a member function for the type
This.nome = newnome
End Sub
Dim As testing myVariable
'' This is OK, number is public
myVariable.number = 69
'' this would generate a compile error
'' - nome is private and we're trying to access it outside any of this TYPE's member functions
'' myVariable.nome = "FreeBASIC"
Dialect Differences:
- Available only in the -lang fb dialect.
Differences from QB:
- New to FreeBASIC
See also:
- Private
- Public: (Access Control)
- Protected: (Access Control)
- Type
Back to User Defined Types