База ответов ИНТУИТ

Язык программирования C++

<<- Назад к вопросам

Если в конструкторе класса
class  A { public:    A() { ptr = new char[size];         Init(); }    ~A() { if (ptr) delete[] ptr; }    char* ptr; };
произойдет исключительная ситуация, будет ли потеряна память при откате по стеку?

(Отметьте один правильный вариант ответа.)

Варианты ответа
зависит от конкретного компилятора
будет, только если объект класса создавался с помощью new
будет, если создавалась автоматическая переменная класса a(Верный ответ)
да, будет, во всех случаях
нет, не будет
Похожие вопросы
В какой строке будет ошибка компиляции?
  1:class A  2:  { public: void f1(int &a){val+=a++;};//val инициализируется в конструкторе  3:          int const f2() {return val+1;};   4:          int val;   5:          void f3(int f, const char ch);  6:   } A1;    7: void A::f3(int f, const char ch){  8:  int d=5;  9:  f1(*d); 10:  f2(); 11: }    
Шаблон A и его специализации объявлены следующим образом:
template <class T> class A{  public:  A(){ printf("1   ");}};template <> class A<int>{  public:  A(){ printf("2   ");}};template <> class A<char*>{  public:  A(){ printf("3   ");}};  
Какой будет результат после выполнения кода
A<int> a;A<char> a1;A<long> a2;  
Если указатель объявлен как
char sss = 't';char ddd;const char* ptr = &sss;
какое из следующих выражений верно:
Укажите правильный доступ к членам класса:
  class my   { public: double Z;       int f(int c, int d) {return c+d;}       char s;   } T1, T2;  
Какой результат будет у следующего выражения?
  const char* str1 = "hello";  char* str2 = const_cast ( char* ) str1;   cout << str2;  
У какой переменой в данном коде самое короткое "время жизни"?
  char foo(char my_ch) {  char ch= my_ch;   static int flag = 1;  if (flag){   char p;   p=ch;   ch=ch+1;  }  .....  return ch;  }
У какой переменой в данном коде самое длинное "время жизни"?
  char foo(char my_ch) {  char ch= my_ch;   static int flag = 1;  if (flag){   char p;   p=ch;   ch=ch+1;  }  .....  return ch;  }
Что будет напечатано в результате выполнения следующего кода?
  char x[] = "Hello, world";  char* p = x; p += 4; cout << *p;  
Что будет на экране после выполнения программы
    namespace t      { char * c = "Hi"; }    int main()    {     char * x2 = c;    cout << x2;    return 0;    }    
Определите размер структуры
struct {char fio[30];unsigned char date:4;unsigned char code:4;};