Dyrektywy #pragma umożliwiają każdemu kompilatorowi oferowanie funkcji specyficznych dla maszyny i systemu operacyjnego przy zachowaniu ogólnej zgodności z językami C i C ++.
Jaki jest cel #pragmaznaków w Xcode? Czy ich lokalizacja w .mplikach ma znaczenie? Czy niektórzy powinni stawić #pragmasię przed wszystkimi innymi? Czy oni muszą być obecni? Czy można dodawać nowe znaki? Dlaczego mieliby być? Co to powoduje? Czy usunięcie znaku jest szkodliwe? Czy ktoś chciałby kiedykolwiek?
W Visual C ++ można używać #pragma warning (disable: ...). Odkryłem również, że w GCC można przesłonić flagi kompilatora plików . Jak mogę to zrobić dla „następnej linii” lub z semantyką push / pop wokół obszarów kodu za pomocą GCC?
Czy w przypadku architektur Intela istnieje sposób, aby poinstruować kompilator GCC, aby generował kod, który zawsze wymusza przewidywanie gałęzi w określony sposób w moim kodzie? Czy sprzęt Intel w ogóle to obsługuje? A co z innymi kompilatorami lub oprogramowaniem sprzętowym? Użyłbym tego w kodzie C ++, w którym znam przypadek, …
Czy istnieje sposób na wyłączenie tylko jednego wiersza ostrzeżenia w pliku CPP w programie Visual Studio? Na przykład, jeśli złapię wyjątek i go nie obsłużę, otrzymam błąd 4101 (zmienna lokalna bez odniesienia). Czy istnieje sposób, aby zignorować to tylko w tej funkcji, ale w przeciwnym razie zgłosić to w jednostce …
Czy istnieje sposób osadzenia instrukcji pragmy w makrze z innymi instrukcjami? Próbuję osiągnąć coś takiego: #define DEFINE_DELETE_OBJECT(type) \ void delete_ ## type_(int handle); \ void delete_ ## type(int handle); \ #pragma weak delete_ ## type_ = delete_ ## type Nie ma problemu z rozwiązaniami doładowania (z wyjątkiem fali), jeśli takie …
Mam fragment kodu, który generuje wiele ostrzeżeń (przestarzały interfejs API) Używając clang * mogłem to zrobić #pragma clang diagnostic push #pragma clang diagnostic ignored "-Wdeprecated-declarations" ... #pragma clang diagnostic pop Jednak to nie działa szybko. Jak to zrobić szybko? Uwaga: nie chcę wyłączać ostrzeżenia globalnie ani nawet całego pliku, ale …
Jaki jest najbliższy odpowiednik GCC do tego kodu preprocesora MSVC? #pragma warning( push ) // Save the current warning state. #pragma warning( disable : 4723 ) // C4723: potential divide by 0 // Code which would generate warning 4723. #pragma warning( pop ) // Restore warnings to previous state. Mamy …
Wiem więc, czym jest pragma i do czego służy, ale jakie jest znaczenie tego słowa? Używałem go wiele razy w kodzie, ale nigdy tak naprawdę nie wiedziałem, co to słowo faktycznie oznacza lub oznacza.
Jaki jest sens mówienia kompilatorowi, aby włączył plik tylko raz? Czy nie miałoby to domyślnie sensu? Czy jest jakiś powód, aby wielokrotnie dołączać jeden plik? Dlaczego po prostu tego nie założyć? Czy ma to związek z konkretnym sprzętem?
Używamy plików cookie i innych technologii śledzenia w celu poprawy komfortu przeglądania naszej witryny, aby wyświetlać spersonalizowane treści i ukierunkowane reklamy, analizować ruch w naszej witrynie, i zrozumieć, skąd pochodzą nasi goście.
Kontynuując, wyrażasz zgodę na korzystanie z plików cookie i innych technologii śledzenia oraz potwierdzasz, że masz co najmniej 16 lat lub zgodę rodzica lub opiekuna.