Czy jest możliwe, aby kod C ++ był zgodny zarówno ze standardem C ++ 03, jak i standardem C ++ 11 , ale robi różne rzeczy w zależności od tego, w ramach którego standardu jest
Czy jest możliwe, aby kod C ++ był zgodny zarówno ze standardem C ++ 03, jak i standardem C ++ 11 , ale robi różne rzeczy w zależności od tego, w ramach którego standardu jest
Jeśli zadeklaruję klasę bazową (lub klasę interfejsu) i określę wartość domyślną dla co najmniej jednego z jej parametrów, czy klasy pochodne muszą określać te same wartości domyślne, a jeśli nie, to które wartości domyślne będą widoczne w klasach pochodnych? Dodatek: Interesuje mnie również, jak...
Zgodnie z C ++ '03 Standard 2.3 / 1: Przed jakimkolwiek innym przetwarzaniem każde wystąpienie jednej z następujących sekwencji trzech znaków („sekwencje trygrafów”) zastępuje się pojedynczym znakiem wskazanym w tabeli 1.
Możliwe jest napisanie funkcji, która po skompilowaniu kompilatorem C zwróci 0, a skompilowana kompilatorem C ++ zwróci 1 (trywialne rozwiązanie #ifdef __cplusplusnie jest interesujące). Na przykład: int isCPP() { return sizeof(char) == sizeof 'c'; } Oczywiście powyższe zadziała tylko wtedy,...
Jestem bardzo zdezorientowany co do inicjalizacji wartości i domyślnej oraz zerowej. a zwłaszcza wtedy, gdy zaczynają stosować różne standardy C ++ 03 i C ++ 11 (i C ++ 14 ). Cytuję i próbuję rozszerzyć naprawdę dobrą odpowiedź Value- / Default- / Zero- Init C ++ 98 i C ++ 03 tutaj, aby uczynić...
Zwróć uwagę, że to pytanie zostało pierwotnie opublikowane w 2009 r., Zanim C ++ 11 został ratyfikowany i zanim znaczenie autosłowa kluczowego zostało drastycznie zmienione. Udzielone odpowiedzi dotyczą tylko C ++ 03 znaczenia auto- czyli określonej klasy pamięci masowej - a nie znaczenia C ++...