Secondo lo standard C ++ (7.1.6.2 Specificatori di tipo semplice)
3 Quando sono consentiti più specificatori di tipo semplice, possono essere liberamente mescolati con altri specificatori di decl in qualsiasi ordine.
Quindi ad esempio la seguente dichiarazione è valida
long static long const int x = 10;
Puoi anche usare lo constexpr
specificatore insieme al const
qualificatore. Per esempio
constexpr long static long const int x = 10;
A proposito, ci siamo dimenticati dell'identificatore signed
! Aggiungiamolo ad esempio prima del dichiaratorex
constexpr long static long const int signed x = 10;
In C è inoltre possibile utilizzare diversi qualificatori di tipo nella stessa sequenza di specificazione di dichiarazione. Secondo lo standard C (6.7.3 Tipo qualificatori)
5 Se lo stesso qualificatore appare più di una volta nello stesso elenco di specificatori-qualificatori, direttamente o tramite uno o più tipi di errori di battitura, il comportamento è lo stesso come se comparisse solo una volta ....
Quindi ad esempio in C vale anche la seguente dichiarazione
const long const long static const int const signed x = 10;
Quindi, se vieni pagato in base al numero di simboli digitati nel programma, ti consiglio di utilizzare tali dichiarazioni. :)
std::swap
. Questo non verrà compilato se i tipi non sono identici.