我在同一个类中有 2 个函数,我想在一个函数中修改向量的大小,并在另一个函数中有这个新大小?

Posted

技术标签:

【中文标题】我在同一个类中有 2 个函数,我想在一个函数中修改向量的大小,并在另一个函数中有这个新大小?【英文标题】:I have 2 functions in the same class, and I want to modify the size of a vector in one function, and have this new size in the other function? 【发布时间】:2015-12-08 22:07:27 【问题描述】:

我在同一个类中有 2 个函数,我想在一个函数中修改向量的大小,并在另一个函数中使用这个新大小?

我有一个

class A 

 void add_vector (int val)
         value.push_back(val); 
         value.push_back(val); 
        cout << value.size() << endl; 

void check_size()
 cout << value.size() << endl; 



private: 
vector<int>value; 

我知道这里的语法并不完美,我在真实代码中做得更好,但我的问题在于类检查大小,我的值表变为大小 0,尽管我在 add_vector 函数中更改了它

如何将相同的向量大小应用于 check_value 大小

【问题讨论】:

您似乎缺少一个或多个右括号。发布您的确切代码。在 C++ 中,单个字符可能会对代码的操作产生很大影响。 我将其设置为demo,它工作正常。将您的实际代码发布为演示以获得更多帮助,以便我们可以看到实际存在的问题。 【参考方案1】:

我不知道你是否知道,但是有一个语法错误,你没有关闭第一个函数void add_vector (int val)

已经关闭了函数并测试了它的工作代码。

#include <vector>
#include <iostream>

class foo
private: 
    std::vector<int>value;
public:
    void add_vector(int val)
        value.push_back(val);
        value.push_back(val);
        std::cout << value.size() << std::endl;
    

    void check_size()
        std::cout << value.size() << std::endl;
    

希望这会有所帮助。

【讨论】:

以上是关于我在同一个类中有 2 个函数,我想在一个函数中修改向量的大小,并在另一个函数中有这个新大小?的主要内容,如果未能解决你的问题,请参考以下文章

如何在另一个类中调用一个类中的函数对象?

如何在Angular中的组件中调用服务类中的函数

当我的类中有属性具有默认构造函数来提供值自动映射器时,如何映射?

在父方法中获取子类名[duplicate]

类方法的协议

从屏幕类调用 kv 中的父函数