c++刚学,学长看一下我这代码为什么没输出?
#include
using namespace std;
class counter
{
public:
counter(int number);
void increment();
void decrement();
int getvalue();
int print();
private:
int value;
};
counter::counter(int number)
{
value = number;
}
void counter::increment()
{
value++;
}
void counter::decrement()
{
value--;
}
int counter::getvalue()
{
return value;
}
int counter::print()
{
cout << "Value is " << value << endl;
return 0;
}
int main()
{
counter (4);
counter increment();
counter decrement();
counter getvalue();
counter print();
return 0;
}
counter c(4);
c.increment();
c.decrement();
c.getvalue();
c.print();
对于普通人而言,算法的学习最重要的是能够形成基本的算法思维,懂得从程序设计的角度对高重复性的操作做优化。这其中基本算法思想的掌握和常用数据结构的理解是必不可少。这方面的学习更倾向于多看多想多练。
(务必能够手撕代码)
(务必熟悉底层原理和实现)
在你的代码中,以下几行代码存在语法错误:
这些语句的目的应该是创建counter类的对象并调用相应的方法,但是语法不正确。
counter (4);
counter increment();
counter decrement();
counter getvalue();
counter print();
你可以通过以下方式创建counter类的对象并调用相应的方法:
int main()
{
counter c(4); // 创建一个名为c的counter对象,并初始化其值为4
c.increment(); // 调用c的increment()方法
c.decrement(); // 调用c的decrement()方法
int value = c.getvalue(); // 调用c的getvalue()方法,并将返回值存储在变量value中
c.print(); // 调用c的print()方法
return 0;
}
注意到上述代码中,我们先创建了一个名为c的counter对象,并将其初始化为4,然后通过c.的方式调用对象的方法,最后输出了counter对象的值。
改成:
int main()
{
counter obj(4); //这样去定义这个类的对象
obj.increment(); //这样表示调用这个类的increment()方法
obj.decrement();
obj.getvalue();
obj.print();
return 0;
}