Çıkış arasındaki fark nedir() ve iptal()?
C ve C , exit()
abort()
arasındaki fark nedir? Bir hata (istisna değil) sonra programı bitirmek için çalışıyorum.
CEVAP
abort()
çıkar nesneleri çağırmadan önce fonksiyonları atexit()
kullanarak kayıtlı çağırmadan ve' yıkıcılar. ilk programınız exit()
Her iki program çıkmadan önce. Otomatik nesneler için yıkıcılar olsa çağırmaz. Bu yüzden
A a;
void test() {
static A b;
A c;
exit(0);
}
Will düzgün a
b
imha, ama c
yıkıcılar arayacak. abort()
de nesnelerin yıkıcı demez. Bu talihsiz bir durum olarak, C Standart düzgün sonlandırma sağlayan alternatif bir mekanizma açıklanır:
Otomatik depolama süresi ile nesneleri
main()
otomatik nesneleri içerir veexit()
çağrısı yürütür olan bir program yok. Doğrudan kumandamain()
yakalanmış bir özel durum üretiliyor tarafındanmain()
böyle bir transfer olabilir.
struct exit_exception {
int c;
exit_exception(int c):c(c) { }
};
int main() {
try {
// put all code in here
} catch(exit_exception& e) {
exit(e.c);
}
}
exit()
, düzenlemek arama yerine bu kodu 18* *yerine.
Bir iletişim arasındaki fark veya Andr...
Bir URI, URL ve URN arasındaki fark ne...
Aramak ve uygulamak arasındaki fark ne...
@Staticmethod ve @Python classmethod a...
Match_parent ve fill_parent arasındaki...