Bob*_*les 1 c++ compiler-errors class void visual-c++
我有以下C++(它还没有真正做任何事......)
#include "stdafx.h"
#include <iostream>
using namespace std;
class Ranker
{
int up, down;
public:
void set_ranks(int, int);
int rank(int, int, int, double);
}
void Ranker::set_ranks(int a, int b)
{
up = a;
down = b;
}
int _tmain(int argc, _TCHAR* argv[])
{
return 0;
}
Run Code Online (Sandbox Code Playgroud)
当我运行它时,它会在MS V C++中显示以下错误消息
1>------ Build started: Project: rankclass, Configuration: Debug Win32 ------
1> rankclass.cpp
1>c:\users\student\desktop\solomon w. c++\rankclass\rankclass\rankclass.cpp(17): error C2628: 'Ranker' followed by 'void' is illegal (did you forget a ';'?)
1>c:\users\student\desktop\solomon w. c++\rankclass\rankclass\rankclass.cpp(18): error C2556: 'Ranker Ranker::set_ranks(int,int)' : overloaded function differs only by return type from 'void Ranker::set_ranks(int,int)'
1> c:\users\student\desktop\solomon w. c++\rankclass\rankclass\rankclass.cpp(13) : see declaration of 'Ranker::set_ranks'
1>c:\users\student\desktop\solomon w. c++\rankclass\rankclass\rankclass.cpp(18): error C2371: 'Ranker::set_ranks' : redefinition; different basic types
1> c:\users\student\desktop\solomon w. c++\rankclass\rankclass\rankclass.cpp(13) : see declaration of 'Ranker::set_ranks'
========== Build: 0 succeeded, 1 failed, 0 up-to-date, 0 skipped ==========
Run Code Online (Sandbox Code Playgroud)
为什么这样......排名不是无效的?!?!
Rob*_*obᵩ 19
Ranker声明后您缺少分号.
它应该是:
class Ranker
{
int up, down;
public:
void set_ranks(int, int);
int rank(int, int, int, double);
}; // <--- Note semicolon
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
4547 次 |
| 最近记录: |