mot-clé 'internal' en c++
Bonjour tout le monde,
en C#, il existe un mot-clé internal. Lorsqu'une fonction membre est déclarée comme internal, elle n'est accessible que dans l'espace de nommage dans laquelle elle est déclarée.
Par exemple (ce pseudo-code est un mix de c++ et de C#):
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
| namespace NM1
{
class Class1
{
internal Class1(); // le constructeur est déclaré comme interne
};
}
namespace NM2
{
void une_fonction()
{
Class1 c1; // ne compile pas
NM1::Class1 c2; // ne compile pas non plus
}
} |
Dans le code ci-dessus, il est absolument impossible d'appeler directement le constructeur de Class1 dans n'importe quel espace de nommage qui n'est pas NM1.
En ce moment je développe beaucoup en c#, et j'aime beaucoup cette fonctionnalité, et je m'y suis habitué. Du coup je cherche une façon pour faire la même chose en C++. Mais je n'ai pas le début d'une idée. Quelqu'un en a une?