SORU
25 EYLÜL 2008, PERŞEMBE


c özel durum : std::string atma

C yöntemlerimi garip bir şey karşılaştığınızda bir istisna atmak istiyorum ve kurtarabilirsiniz. std::string bir işaretçi atmak için TAMAM mı?

Öne doğru bakıyordu:

void Foo::Bar() {
    if(!QueryPerformanceTimer(&m_baz)) {
        throw new std::string("it's the end of the world!");
    }
}

void Foo::Caller() {
    try {
        this->Bar(); // should throw
    }
    catch(std::string *caught) { // not quite sure the syntax is OK here...
        std::cout << "Got " << caught << std::endl;
    }
}

CEVAP
25 EYLÜL 2008, PERŞEMBE


Evet. std::exception standart C Kitaplığı baz istisna sınıfıdır. Onlar kendilerini kullanım sırasında bir özel durum olabilir çünkü özel sınıflar olarak dizeleri kullanmaktan kaçınmak isteyebilirsiniz. Eğer bu olursa, o zaman nereye gideceksiniz?

boost istisnalar ve hata işleme için document iyi mükemmel bir tarzı vardır. Bir okuma değer.

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • Facebook Developers

    Facebook Dev

    24 ŞUBAT 2009
  • khloe brooks

    khloe brooks

    25 Temmuz 2011
  • SellerDp

    SellerDp

    27 EKİM 2009