大神来看看这个代码
主文件#include<iostream>
#include "header.h"
int main()
{
using namespace std;
double d = {1.1, 2.2, 3.3, 4.4, 5.5};
int i = {3, 4, 5, 1, 2};
cout << "the max of the int is\t" << max5(i) <<endl;
cout << "the max of the double is\t" << max5(d) << endl;
cin.get();
cin.get();
return 0;
}
函数
#include "header.h"
template<typename T>
typename max5(T num[])
{
T temp = num;
int i = 1;
for (; i < Arsize; ++i)
temp = temp > num ?temp : num;
return temp;
}
头文件
#ifndef HEADER_H
#define HEADER_H
template<typename T>
typename max5(T num[]);
const int Arsize = 5;
#endif
显示
1>d:\鲁大师\作业\链接\链接\header.h(5): error C4430: 缺少类型说明符 - 假定为 int。注意: C++ 不支持默认 int
1>d:\鲁大师\作业\链接\链接\2.cpp(12): error C4430: 缺少类型说明符 - 假定为 int。注意: C++ 不支持默认 int
1>1.cpp
1>d:\鲁大师\作业\链接\链接\header.h(5): error C4430: 缺少类型说明符 - 假定为 int。注意: C++ 不支持默认 int
1>正在生成代码... 把主函数main放在最后面,多出一个‘header.h’头文件。#include<iostream>
#include "header.h"
//#include "header.h"
template<typename T>
typename max5(T num[])
{
T temp = num;
int i = 1;
for (; i < Arsize; ++i)
temp = temp > num ?temp : num;
return temp;
}
#ifndef HEADER_H
#define HEADER_H
template<typename T>
typename max5(T num[]);
const int Arsize = 5;
#endif
int main()
{
using namespace std;
double d = {1.1, 2.2, 3.3, 4.4, 5.5};
int i = {3, 4, 5, 1, 2};
cout << "the max of the int is\t" << max5(i) <<endl;
cout << "the max of the double is\t" << max5(d) << endl;
cin.get();
cin.get();
return 0;
}
ANDES 发表于 2015-2-13 15:21
把主函数main放在最后面,多出一个‘header.h’头文件。#include
#include "header.h"
//#include "heade ...
没看懂 小傻子 发表于 2015-2-13 15:58
没看懂
把代码复制到编译器去调就知道了,代码是你自己写的,如果你看不懂我也没办法,我只是把顺序颠倒了一下。如果你还有问题,建议去看下“被调用函数的声明”这个知识点。 ANDES 发表于 2015-2-13 16:08
把代码复制到编译器去调就知道了,代码是你自己写的,如果你看不懂我也没办法,我只是把顺序颠倒了一下。 ...
1>d:\鲁大师\作业\practice\practice\header.h(5): error C4430: 缺少类型说明符 - 假定为 int。注意: C++ 不支持默认 int
1>d:\鲁大师\作业\practice\practice\a.cpp(13): error C4430: 缺少类型说明符 - 假定为 int。注意: C++ 不支持默认 int
不对啊 小傻子 发表于 2015-2-13 16:16
1>d:\鲁大师\作业\practice\practice\header.h(5): error C4430: 缺少类型说明符 - 假定为 int。注意: C+ ...
我的编译器是VC++6.0工程建的是win控制台,文件是C++的(.cpp),我这边却可以运行成功。自己在慢慢找找原因吧。不要那么轻易的提问,这样不利于你的成长,都是很容易解决的错误。
页:
[1]