Что произойдет если приведенный ниже код попытаться откомпилировать и запустить на выполнение? #include
class P{
private:
int *dynamic_int;
public:
P(){
dynamic_int = new int;
*dynamic_int = 0;
}
P(const P & p){
dynamic_int = new int;
*dynamic_int = p.GetValue();
}
P(int n){
dynamic_int = new int;
*dynamic_int = n;
}
~P(){
delete dynamic_int;
}
P & operator = (P & p){
*dynamic_int = p.GetValue();
return *this;
}
void SetValue(int n){
*dynamic_int = n;
}
int GetValue() const{
return *dynamic_int;
}
};
int main(){
P A,B(3),C = A;
B.SetValue(2);
A = B;
std::cout<return 0;
}
Ответы:
1. Будет выведено: 1 2. Будет выведено: 2 3. Будет выведено: 3 4. Будет выведено: 0 5. Синтаксическая ошибка, связанная с недоступностью или отсутствием поля, оператора или функции. 6. Синтаксическая ошибка, связанная с отсутствием конструктора копирования. 7. Синтаксическая ошибка, связанная с отсутствием перегруженного оператора присваивания. 8. GP-ошибка или ошибка нарушения работы функций управления памятью.
- 1. 1
- 2. 2
- 3. 3
- 4. 4
- 5. 5
- 6. 6
- 7. 7
- 8. 8
Для просмотра статистики ответов нужно
войти.