首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >未使用的变量是否禁止打印?

未使用的变量是否禁止打印?
EN

Stack Overflow用户
提问于 2017-05-11 19:59:49
回答 1查看 119关注 0票数 0

我不确定为什么我的函数不工作。它应该会输出一些东西(用户越界后的错误消息)我已经将数组索引设置为3个索引槽。我也得到了一个错误“未使用的变量'yourArray‘我不确定从这里到哪里去。仍在努力学习c++,因此,我将非常感谢您的建议或帮助。”

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
#include <iostream>
using namespace std;

class safeArray{
public:
  void outofBounds(int,int);
  int yourArray[3];
  int i;
};

  void outofBounds(int,int);
  int yourArray[3];
  int i;

  void outofBounds(int yourArray[],int sizeofArray) {       
  for (i=0;i<sizeofArray;i++){
  cout<<"Please enter integer";
  cin >>yourArray[i];
  yourArray[i]++;

 for (i=0;i>sizeofArray;){
 cout<<"safeArray yourArray (" <<yourArray[0]<<","<<yourArray[3]<<")"
 <<endl;
  }}}

 int main() {
 void outofBounds(int,int);
 int yourArray[3];    //Error: Used variable "yourArray"
 };
EN

回答 1

Stack Overflow用户

发布于 2017-05-11 21:33:41

您的程序运行正常。除非您在编译器中添加了"-Werror“标志,否则编译器会将”未使用的变量“-Warning视为错误。代码可以很好地编译,如下所示:http://coliru.stacked-crooked.com/a/d648b94f205b51dc

尽管您的程序不能执行您希望它执行的操作,但由于以下原因:

1.)在不同的命名空间中有3个outofBounds的重新定义:

类命名空间SafeArray中的一个函数,它是它的成员函数

  • ,然后是全局空间

  • ,然后是

-(入口点)

但实际定义的是全局空间中的那个(第二个)。

2.)您没有将任何内容传递给main中的函数。首先在那里定义您的Array,然后通过执行以下操作调用该函数:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
int yourArray[3];
outofBounds(yourArray, 3);

3.)您可能希望在SafeArray-class中定义成员方法"outofBounds“。这可以通过编写作用域运算符::来完成,它指定成员函数所属的类:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
class SafeArray {   // is a class, can also be struct since everything is public anyways
public:
    void outofBounds(int,int); // a member of the class SafeArray
// private:
    int yourArray[3];
    int i;
};

void SafeArray::outofBounds(int yourArray[],int sizeofArray) { 
    // do something...
}

但话又说回来,你需要一些构造函数来初始化类的成员。需要做一些工作才能让它工作,就像你想要的那样。祝你好运:)

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/43924517

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
查看详情【社区公告】 技术创作特训营有奖征文