小编RIJ*_*JIK的帖子

从孩子那里得到变数

我有一个水果类和一个从水果中继承的苹果.让我们说我有各种各样的水果.我可以说苹果,香蕉和其他水果.
问题:当我尝试从该数组的元素(水果的子)获取值时,它将无法编译.

class Fruit{
public: 
    Fruit();
}

class Apple : public Fruit{
public: 
    Apple();
    int count; //number of apples in the store
}

int main(){
    Fruit market[3];
    market[0] = Apple();

    int apples = market[0].count;
}
Run Code Online (Sandbox Code Playgroud)

我知道这是因为程序不知道它正在看苹果; 但如果我当然知道它是一个苹果(例如通过检查),我如何访问Apple.count?

c++ inheritance class parent-child

2
推荐指数
1
解决办法
76
查看次数

如何让编译器警告我缺少返回值?

所以我浪费了一个小时试图找出我的程序崩溃的原因.碰巧,我忘了把函数的返回语句放进去.

功能大致如下:

structType name(2 parameters){
     .....
}
Run Code Online (Sandbox Code Playgroud)

我习惯了警告,返回语句丢失了.为什么不在这里这样做,我怎么能打开这个功能呢?

[我在C中编码]编辑:使用GCC

c gcc compiler-warnings

0
推荐指数
1
解决办法
163
查看次数

指向矢量记忆丧失的指针

我反对我的指针向量问题...我知道问题可能是什么:

当我创建一个指向向量的指针时,指针会保留堆上向量的大小.所以这基本上意味着,指针现在指向向量的内存而没有任何内部......当我现在调整大小或推回向量时,指针现在仍然指向向量的整个内存或只有内存刚开始分配?

我也想知道,如果你有一些技巧可以解决这个问题(如果我认为是真的)."vector.reserve(n)"是一种实现此目的的方法吗?或者有什么我可以做的事情来覆盖指针内存地址,它被初始化后的向量?

c++ memory heap pointers vector

-2
推荐指数
1
解决办法
205
查看次数

标签 统计

c++ ×2

c ×1

class ×1

compiler-warnings ×1

gcc ×1

heap ×1

inheritance ×1

memory ×1

parent-child ×1

pointers ×1

vector ×1