1
I possède une classe A dans "ah":C++ définissant objet statique à l'intérieur de la classe
#include "b.h"
class A {
public:
static B b;
}
Je veux initialiser b dans une autre fonction
Dans "main.cpp":
#include "a.h"
#include "b.h"
int main() {
....
B A::b = B(arg1, arg2);
Mais le vérificateur de syntaxe me donne l'erreur: "membre A :: b ne peut pas être défini dans la portée actuelle." Quelle est la bonne façon de faire cela?
par ailleurs, ce n'est pas un bon style de code. vous devriez utiliser le constructeur statique le moins possible. – merito
Pourquoi est-ce? @merito –
car C++ ne définit pas l'ordre de construction de l'objet statique. Vous devriez l'utiliser avec soin. – merito