Aracılığıyla paylaş


Setjmp/longjmp kullanma

Kullanmak istemediğiniz setjmp ve longjmp C++ programlarında; Bu işlevler, C++ nesnesi semantiği desteklemez.Ayrıca, C++ programlarında bu işlevleri kullanarak performansı en iyi duruma getirilmesi yerel değişkenler engelleyerek düşebilir.C++ özel durum işleme kullanmak try/catch yerine oluşturur.

Kullanmanız gerekiyorsa setjmp/longjmp setjmp dahil bir C++ programında bu işlevleri ve C++ özel durum işleme arasındaki etkileşim gerektirir.H veya setjmpex.H.Yerel nesnelerin yığın sırasında çağrılacak için yıkıcı açılımı ile derlerseniz /eh.İle derleme / EHs ve sizin işlevlerinden birini kullanan bir işlev çağrısı nothrow, ve işlevi kullanan, nothrow çağrıları longjmp, yıkıcı açılımı değil ortaya çıkabilecek, iyileştirici bağlı.

Kodunuzu taşınabilir olmasını istiyorsanız, ayrıca çerçeve tabanlı nesneler doğru edilmesine bir arama için kullanmadan yerel olmayan bir goto yürütürken kullanmadığı longjmp.

Ayrıca bkz.

Başvuru

(Yapısal) c ve C++ özel durumlar