Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/powershell/11.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C++ C++;原型没有被重新定义_C++ - Fatal编程技术网

C++ C++;原型没有被重新定义

C++ C++;原型没有被重新定义,c++,C++,我是一名编程初学者,刚刚开始编写足够复杂的程序,原型可能会有所帮助。问题是,当我编写程序、编译并运行它时,原型函数是空的,所以我的cout或cin都不是空的 将显示后面定义的函数中的提示 在这段代码中,switch语句只有一部分完成,其中CubeVol函数是原型化的,然后在后面定义 此代码进行编译,运行时显示菜单。当我输入“2”时,程序结束时不显示“立方体边的长度”或要求输入 如果有必要的话,我将使用Cygwin与gnu g++编译器和记事本++一起编写代码,并将其保存为.C文件。我还尝试将其格

我是一名编程初学者,刚刚开始编写足够复杂的程序,原型可能会有所帮助。问题是,当我编写程序、编译并运行它时,原型函数是空的,所以我的cout或cin都不是空的 将显示后面定义的函数中的提示

在这段代码中,switch语句只有一部分完成,其中CubeVol函数是原型化的,然后在后面定义

此代码进行编译,运行时显示菜单。当我输入“2”时,程序结束时不显示“立方体边的长度”或要求输入

如果有必要的话,我将使用Cygwin与gnu g++编译器和记事本++一起编写代码,并将其保存为.C文件。我还尝试将其格式化为.cpp

请记住,大部分空白的switch语句是供以后实际完成程序时使用的

如何正确创建CubeVol函数的原型?

#include <iostream>
#include <cmath>
#include <string>
using namespace std;

double CubeVol();


int main()
{ int choice=0; 
cout<< " 1. Sphere \n 2. Cube \n 3. Cone \n 4. Cylinder \n 5. Prism \n 6. Exit \n";
cin>> choice;

switch (choice){
    case 1:
    ;
    break;
    case 2:
     CubeVol;
    break;
    case 3:
    ;
    break;
    case 4:
    ;
    break;
    case 5:
    ;
    break ;
    case 6:
    ;
    ;
    break;
    };

}  

    double CubeVol ()
{ 
double side=0.0; double cubev=0.0;
  cout<< "length of cubes side";
  cin>> side;
  cubev= pow(side,3);
return cubev;
}
#包括
#包括
#包括
使用名称空间std;
双立方();
int main()
{int choice=0;
选择;
开关(选择){
案例1:
;
打破
案例2:
库比沃;
打破
案例3:
;
打破
案例4:
;
打破
案例5:
;
打破
案例6:
;
;
打破
};
}  
双立方()
{ 
双侧=0.0;双立方=0.0;
侧边;
cubev=功率(侧,3);
返回库贝夫;
}

案例2中,您没有调用函数
CubeVol()

case 2:
   std::cout << CubeVol() << "\n"; //call the function and print return value
break;
案例2:

是什么让你认为它与原型有关,你说的“原型没有被重新定义”是什么意思?不管怎样,请看@Kunal的答案并修复您的
案例2:
块。我对编程非常陌生,因此在我缺乏经验的眼中,似乎没有定义为CubeVol函数的prototpye“未定义”与您在标题中的“未重新定义”明显不同;)大多数时候,在C++中,如果没有包含原型,编译器将终止错误。我能想到的一种情况是,如果你有重载函数,其中一个可以升级到另一个,你提供了一个原型,但打算调用另一个。(如果这听起来很复杂的话,很抱歉——这肯定是很深奥的。)对不起,我忘了把返回语句放回去。为了让原型正常工作,我做了一次毫无意义的尝试,删除了它。谢谢,每次我出错时,它都能正常工作,就像这样简单。就像我刚开始使用notepad++时,我试图自己编译.h头文件,但在尝试运行该程序时,我无法理解为什么会出现路径错误。经过大约5个小时的修复,我放弃了一夜,第二天我的教授第一次尝试将它保存为.C文件,并在修复中提出一个快速问题,即“std::cout”,定义它将使用标准名称空间。但是因为我在程序的顶部使用了namespace std,所以我不需要它,对吗?是的,你不需要它,但是要避免使用namespace std。这不是一个好的实践,会在更大的代码库中导致问题。