小编use*_*560的帖子

operator ++()和operator ++(int)有什么区别?

我从老师制作的程序中获得了这些代码:

 TimeKeeper& operator++() {
        d_seconds++;
        return *this;
  }
  const TimeKeeper operator++(int) {
        TimeKeeper tk(*this);
        ++(*this);
        return tk;
  }
Run Code Online (Sandbox Code Playgroud)

我的老师问我们的一个问题是"operator ++()返回一个引用,而operator ++(int)返回一个值,解释原因?"

任何人都可以向我解释这个吗?如果你需要剩下的代码我不介意穿上它!谢谢!!

c++ int operators

4
推荐指数
2
解决办法
713
查看次数

如何在矩阵中使用指针.这行代码的含义是什么:int r =**(++ b);

我不明白为什么我的答案是4?任何人都可以解释矩阵和指针.我的意思是我知道什么是矩阵,它们是一个2行表,但我不知道如何在矩阵中使用指针,就像这里的例子:

int m[][3]={1,2,3,4,5,6,7,8,9};
int (*b)[3]=&m[0];
int r=**(++b);
std::cout << r;
Run Code Online (Sandbox Code Playgroud)

c++ pointers matrix

2
推荐指数
1
解决办法
125
查看次数

我不明白这个方法:z = z >> 1

这是我的代码:

int main(){
 unsigned int z = 18;
 z = z>>1;
 std::cout << z << std::endl;
}
Run Code Online (Sandbox Code Playgroud)

我知道我的结果将是9但我不明白"z = z >> 1"这是什么?>>什么意思?我以为它只用于cin << z; 请解释.谢谢

c++ int unsigned

1
推荐指数
1
解决办法
149
查看次数

标签 统计

c++ ×3

int ×2

matrix ×1

operators ×1

pointers ×1

unsigned ×1