Jak uniknąć anonimowych obiektów C ++

mamScopedLock klasa, która może pomóc zwolnić blokadę automatycznie, gdy zabraknie zasięgu. Problemem jest jednak: Czasami członkowie zespołu piszą nieprawidłowy kod blokady, taki jak

{
    ScopedLock(mutex);   // anonymous
    xxx;
}

Powyższy kod jest błędny, ponieważScopedLock obiekt jest konstruowany i niszczonynatychmiast, więc nie udaje się zablokować oczekiwanego obszaru (xxx). Chcę, aby kompilator dał błąd podczas próby skompilowania takiego kodu. Czy można to zrobić?

Wyszukałemg++ opcje ostrzegawcze, ale nie można znaleźć właściwego.

questionAnswers(6)

yourAnswerToTheQuestion