Форум программистов, компьютерный форум CyberForum.ru

Вызов из потомка конструктор родителя - C++

Восстановить пароль Регистрация
 
Рейтинг: Рейтинг темы: голосов - 14, средняя оценка - 4.93
Golovastik
 Аватар для Golovastik
11 / 11 / 0
Регистрация: 25.05.2009
Сообщений: 435
03.07.2010, 13:20     Вызов из потомка конструктор родителя #1
Как на с++ вызывается конструктор-родителя от конструктора-потомка.
На яве так работает:
Код
package u;
 class A{
private int a,b,c;
A(){}
A(int x1, int y1, int z1){
    a = x1; b = y1; c = z1;
 }


void result(){
   System.out.println(a*b*c);
}
}

 class B extends A{
    B(){}
    B(int s1, int s2, int s3){
        super(s1,s2,s3);
    }
}

public class Main {
    public static void main(String[] args) {
     B obj = new B(5,7,9);
     obj.result();
    }

}
На пхп так работает:
Код
<?php
class Base {
 
private  $a, $b, $c;
function Base($x, $y, $z){
    $this->a = $x; $this->b = $y; $this->c = $z;
}
 function result(){
    echo $this->a*$this->b*$this->c;
 }
}
 
class B extends Base {
  function B($w1,$w2, $w3){
  parent::Base($w1,$w2,$w3);
  }
 }
 
$obj = new B(1,2,3);
$obj->result();
 
?>
Пробую так на с++, не срабатывает:
Код
#include <iostream>
using namespace std;

class A{
private: int a,b,c;
public:
	A(){}
	A(int x1,int x2, int x3)
	{
		a = x1;  b = x2;  c = x3;
	}
	void yra(){
		cout<<a*b*c;
	}
	
};

class B:public A{
public:
	B(){}
	B(int w1, int w2, int w3){
		super(w1,w2,w3);
	}
};



int main() {

	B *obj = new B(1,2,3);
	obj->yra();
	cin.get();
}
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
03.07.2010, 13:20     Вызов из потомка конструктор родителя
Посмотрите здесь:

Вызов метода базового класса из класса-потомка C++
this(Всегда ли вызывается конструктор при не явной передачи объекта в конструктор) C++
C++ Не могу сделать чтобы класс содержал основной конструктор и конструктор копирования
C++ Не могу правильно сделать конструктор и конструктор копирования и принадлежность точки с заданными координатами треугольнику
C++ Не работает вызов виртуальной функции из класса потомка
C++ Вызов специфических для потомка функций, не зная класса потомка
Принудительный вызов метода родителя C++
C++ Будет ли определен компилятором конструктор по умолчанию, если есть конструктор с дефолтным параметром?

Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
ISergey
Maniac
Эксперт С++
 Аватар для ISergey
1331 / 864 / 50
Регистрация: 02.01.2009
Сообщений: 2,622
Записей в блоге: 1
03.07.2010, 13:24     Вызов из потомка конструктор родителя #2
C++
1
2
3
4
5
6
7
class B:public A{
public:
        B(){}
        B(int w1, int w2, int w3):A(w1, w2, w3){
               //....
        }
};
Yandex
Объявления
03.07.2010, 13:24     Вызов из потомка конструктор родителя
Ответ Создать тему
Опции темы

Текущее время: 22:48. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru