Sunteți pe pagina 1din 1

Clase locale

O clasa poate fi definita in interiorul unei functii. Ea este cunoscuta doar acelei functii si necunoscuta in
afara ei.

RESTRICTII:
1. toate functiile membre trebuie definite in interiorul declaratiei pentru class
2. nu are acces la variabilele locale ale functiei in care este declarata (cu exceptia variabilelor locale de tip static
declarate in interiorul functiei)
3. nu se pot declara variabile de tip static in interiorul unei clase locale

NOTA: Din cauza restrictiilor clasele locale nu sunt uzuale in programarea in C++.

#include<iostream>
using namespace std;

void f()
{
class C //definita local
{
int i;
public:
void init(int n) {i = n; }
int da() {return i; }
} ob;

ob.init(10);
cout<<ob.da()<<endl;
}

void main()
{
f(); //class C nu este cunoscuta in main; output: 10
}

S-ar putea să vă placă și