【发布时间】:2016-12-20 23:53:02
【问题描述】:
程序可以运行,但我不确定构造函数有什么问题,因为每次程序运行时都会收到此错误“警告:基类 'Alat' 在此处用于访问 'Alat::ime' [-Wuninitialized] 时未初始化” .我想我从基类调用构造函数的方式有问题,但我不确定是什么问题。真的需要帮助,提前tnx。
#include <iostream>
#include <string>
using namespace std;
class Alat{
protected:
string ime;
int serBr;
int cena;
public:
void setIme(string i);
string getIme();
void setSerBr(int sb);
int getSerBr();
void setCena(int c);
int getCena();
Alat();
Alat(string i, int sb, int c)
:ime(i),
serBr(sb),
cena(c)
{}
void info();
~Alat();
};
#include "Alat.h"
class Rucni : public Alat{
protected:
int minGodKor;
public:
Rucni():Alat(ime, serBr, cena) //I think here is problem, is it wrong called?
{}
int getminGodKor();
void setminGodKor(int min);
void info();
~Rucni();
};
【问题讨论】:
-
您正在尝试使用
ime初始化Alat,它是Alat的成员...... -
我很确定您在运行程序但在编译时会收到警告。了解两者之间的差异很重要。
标签: c++ constructor derived-class