木子屋 Dnawo's BLOG

C++函数也要先声明再使用?

👤 dnawo 📅 2010-11-12 👁 5391 👍 0 💬 0 🔄 本站原创
#include <iostream>

//主函数
int main()
{
	Add(1,2);
	return 0;
}

//定义函数Add
void Add(int x, int y)
{
	std::cout<<x+y;
}

编译报错:

--------------------Configuration: 1 - Win32 Debug--------------------
Compiling...
1.cpp
D:\Program Files\Microsoft Visual Studio\MyProjects\1\1.cpp(6) : error C2065: 'Add' : undeclared identifier
D:\Program Files\Microsoft Visual Studio\MyProjects\1\1.cpp(12) : error C2373: 'Add' : redefinition; different type modifiers
Error executing cl.exe.

1.exe - 2 error(s), 0 warning(s)

原因是main函数中使用了未声明的函数Add,若要正常使用,需在main函数前先声明:

#include <iostream>

void Add(int, int);//声明函数Add

//主函数
int main()
{
	Add(1,2);
	return 0;
}

//定义函数Add
void Add(int x, int y)
{
	std::cout<<x+y;
}

或在使用前先定义:

#include <iostream>

//定义函数Add,先定义再使用
void Add(int x, int y)
{
	std::cout<<x+y;
}

//主函数
int main()
{
	Add(1,2);
	return 0;
}

以前只听过变量要先声明再使用,没想在C++中函数也要,VB、C#中都不存在这样的问题,C++特色吧:)

评论(0)

暂无评论。

计算题
评论需审核通过后显示
← 上一篇 C#使用Socket获取网页源代码 下一篇 → 补码的作用