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

Программирование на языке C++

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

Для приведенного ниже кода при вызове функции Func программа аварийно завершается. В чем причина ошибки?
class Foo {     char *buf; public:     Foo(char *b = "default") {         buf = new char[strlen(b) + 1];         strcpy(buf, b);     }     ~Foo() {         delete[] buf;     } }; Foo Func(Foo f) {    return f; }

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

Варианты ответа
функция должна возвращать Foo& (ссылку).
требуется переопределить операцию =.
значение конструктора по умолчанию имеет тип char*.
в классе отсутствует конструктор копирования.(Верный ответ)
выделяется недостаточный объем памяти.
Похожие вопросы
Что будет выведено на экран в результате работы программы?
#include <stdio.h>void f(char* a, char* b){   char* c;   c = a; a = b; b = c;}int main(){   char a[]="abc";   char b[]= "pr";   f(a,b);   printf ("%s%s", a, b);   return 0;}
Что будет выведено на экран в результате работы программы?
#include <stdio.h>void f(char* a, char* b){   a[1] = b[1]; b[2] = a[2];}int main(){   char a[]="abcd";   char b[]= "opr";   f(a,b);   printf ("%s%s", a, b);   return 0;}
Что будет выведено на экран в результате работы программы?
#include <stdio.h>void f(char* a, char* b){   a = b; b = a;}int main(){   char a[]="abcde";   char b[]= "opr";   f(a,b);   puts(a);   return 0;}
Что будет выведено на экран в результате работы программы?
#include <stdio.h>void f(char* a, char* const b){   a[0] = b[0]; b[1] = a[1];}int main(){   char a[]="abcd";   char b[]= "opr";   f(a,b);   printf ("%s%s", a, b);   return 0;}
Заголовок функции имеет вид: void P(float a, float b, char& c);Укажите правильные варианты вызова подпрограммы, если переменные ввызывающей функции описаны так: float a,k; char d[5]; int c; char m;
Заголовок функции имеет вид: void f(char* a, float& b, float c);Укажите правильные варианты вызова функции, если переменные ввызывающей функции описаны так: char a[10]; float b,x; char c[5]; int d;
Что будет выведено на экран в результате работы программы?
#include <stdio.h>void f(char& a, char d){   a = d; d = a;}int main(){   char a[] = "глаз";   f(a[0],a[3]);   puts(a);   return 0;}
Что будет выведено на экран в результате работы программы?
#include <stdio.h>void f(char& a, char d){   a = 'в'; d = 'д';}int main(){   char a[] = "глаз";   f(a[0],a[3]);   puts(a);   return 0;}
Что будет выведено на экран в результате работы программы?
#include <stdio.h>void f(char a, char d){   a = d; d = a;}int main(){   char a[] = "глаз";   f(a[0],a[3]);   puts(a);   return 0;}
Что будет выведено на экран в результате работы программы?
#include <stdio.h>void f(char a, char& d){   a = 'в'; d = 'с';}int main(){   char a[]="глаз";   f(a[0],a[3]);   puts(a);   return 0;}