如果ProgressBar可以在需要之前消失,那将是很好的.在applyMenuChoice中使用setVisibility.progressBar有问题吗?在PrintStatusTask().execute()中使用setVisibility.progressBar的问题是它在运行时崩溃应用程序.
public class Controller extends Activity {
private ProgressBar progressBar;
...
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.controller);
progressBar = (ProgressBar)findViewById(R.id.progressBar);
...
private boolean applyMenuChoice(MenuItem item) {
switch (item.getItemId()) {
case R.id.menuStatus:
progressBar.setVisibility(View.VISIBLE);
new PrintStatusTask().execute();
progressBar.setVisibility(View.GONE);
...
Run Code Online (Sandbox Code Playgroud) 我正在阅读Effective C++(Scott Meyers),并在尝试编译本书中的以下代码时得到错误"与运算符*不匹配":
rational.h
class rational
{
private:
int num;
int den;
public:
rational(int n = 0, int d = 1);
int getNum() const {return num;}
int getDen() const {return den;}
};
Run Code Online (Sandbox Code Playgroud)
rational.cpp
#include "rational.h"
rational::rational(int n,
int d)
:num(n),
den(d)
{}
const rational operator*(const rational &lhs,
const rational &rhs)
{
return rational( lhs.getNum()*rhs.getNum(),
lhs.getDen()*rhs.getDen() );
}
Run Code Online (Sandbox Code Playgroud)
main.cpp中
#include "rational.h"
int main()
{
rational r1(1,2);
rational r2;
r2 = 2*r1;
r2 = r1*3;
return 0;
}
Run Code Online (Sandbox Code Playgroud)
有人可以解释为什么会这样吗?