关于c++的一个简单问题

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();
  • 这有个类似的问题, 你可以参考下: https://ask.csdn.net/questions/335034
  • 你也可以参考下这篇文章:学习C++:异常处理
  • 除此之外, 这篇博客: 学了C++不知道怎么搞后台开发?先看看这份学习路线吧!中的 二、算法与数据结构 部分也许能够解决你的问题, 你可以仔细阅读以下内容或跳转源博客中阅读:
  • 对于普通人而言,算法的学习最重要的是能够形成基本的算法思维,懂得从程序设计的角度对高重复性的操作做优化。这其中基本算法思想的掌握和常用数据结构的理解是必不可少。这方面的学习更倾向于多看多想多练。

    (务必能够手撕代码)

    • 排序算法(冒泡、插入、选择、快排、希尔、堆排、归并、桶排、基数、计数)、字符串操作、数组操作、递归、回溯、分治、动态规划等

    (务必熟悉底层原理和实现)

    • 链表、栈、队列、树(二叉树、平衡二叉树、红黑树、B树、B+树、哈夫曼树、字典树)、跳表、图
    • 《大话数据结构》适合入门学习
    • 《剑指offer》必刷66题
    • 《算法导论》尽量看,能啃完就是大神

在你的代码中,以下几行代码存在语法错误:

这些语句的目的应该是创建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;
}