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

  • DavideoDesign

    DavideoDesig

    24 NİSAN 2006
  • lane182videos

    lane182video

    6 EKİM 2011
  • the one am radio

    the one am r

    6 Mayıs 2006