#include<iostream>
#include<string>
using namespace std;
class village
{
public:
village(int ,string );
void show();
void usedwater(int k);
static showwater();
private:
string name;
int num;
static int water;
};
village::village(int i,string j)
{
num=i;
name=j;
}
void village::show()//获得村名和人数
{
cout<<"村名:"<<name<<" ";
cout<<"人数:"<<num<<endl;
}
void village::usedwater(int k)//用水
{int a=k;
cout<<"用水:"<<a<<endl;
}
static int water=100;
static nowwater(int m)//当前水位
{
int n;
n=water-m;
cout<<"当前水位:"<<n<<endl;
}
int main()
{village a(100,"张村");
village b(200,"李村");
a.show;
a.usedwater;
a:;nowwater(30);
b.show;
b.usedwater;
static int water=100;
b:;nowwater(60);
return 0;
}
无报错
没有输出
大兄弟,这个代码要是你自己写的,你的c++基础太差了,看看初级语法的书,我当时看的谭浩强的,简单入门,不要着急写程序
如有帮助,请采纳
第10行 static showwater(); 修改为 static int showwater();
第39行 static nowwater(int m)//当前水位 static void nowwater(int m)//当前水位
第50、51、53、54调用函数叫()
51行、54行没有实参
52、56是静态函数,和对象a、b没有关系
nowwate()
#include<iostream>
#include<string>
using namespace std;
class village
{
public:
village(int, string);
void show();
void usedwater(int k);
static void showwater();
private:
string name;
int num;
static int water;
};
village::village(int i, string j)
{
num = i;
name = j;
}
void village::show()//获得村名和人数
{
cout << "村名:" << name << " ";
cout << "人数:" << num << endl;
}
void village::usedwater(int k)//用水
{
int a = k;
cout << "用水:" << a << endl;
}
static int water = 100;
static void nowwater(int m)//当前水位
{
int n;
n = water - m;
cout << "当前水位:" << n << endl;
}
int main()
{
village a(100, "张村");
village b(200, "李村");
a.show();
a.usedwater(20);
nowwater(30);
b.show();
b.usedwater(20);
static int water = 100;
nowwater(60);
return 0;
}
运行结果:

你的代码存在语法错误
我按照你的代码思路修正了代码
但结果需要你自己调整,比如调整输入达到你的预期希望
最后如果你采纳我的建议,点个小采纳
#include<iostream>
#include<string>
using namespace std;
class village
{
public:
village(int ,string );
void show();
void usedwater(int k);
void showwater(int m);
private:
string name;
int num;
int water=100;
};
village::village(int i,string j)
{
num=i;
name=j;
}
void village::show()//获得村名和人数
{
cout<<"村名:"<<name<<" ";
cout<<"人数:"<<num<<endl;
}
void village::usedwater(int k)//用水
{
int a=k;
cout<<"用水:"<<a<<endl;
}
void village::showwater(int m)//当前水位
{
int n;
n=water-m;
cout<<"当前水位:"<<n<<endl;
}
int main()
{
village a(100,"张村");
village b(200,"李村");
a.show();
a.usedwater(30);
a.showwater(30);
b.show();
b.usedwater(60);
b.showwater(60);
return 0;
}
调用类函数成员后面要加(),比如说调用show函数时,要这样:a.show()