小编And*_*eas的帖子

用C++做两次事的成语

两次做某事有一个共同的习惯用法,如下列情况?

    for ( int i = 0; i < num_pairs; i++ ) {
        cards.push_back( Card(i) );
        cards.push_back( Card(i) );
    }
Run Code Online (Sandbox Code Playgroud)

我有一种感觉,比引入一个从0到1计数的新循环变量有一个更清晰的方法,特别是因为除了计数之外它没有被使用.

    for ( int i = 0; i < num_pairs; i++ )
        for ( int j = 0; j < 2; j++ )
            cards.push_back( Card(i) );
Run Code Online (Sandbox Code Playgroud)

(Card只是我编写的一些课程,与问题无关.)

c++ idioms

5
推荐指数
3
解决办法
538
查看次数

是否必须重置std :: array元素?

std::array<int,4> myInts;
std::array<bool,2> myBools;
Run Code Online (Sandbox Code Playgroud)

可以的元素myIntsmyBools被假定为假和0,或者我应该fill手动阵列?

c++ arrays initialization

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

"类"在构造函数中意味着什么?

我看到了这个构造函数:

MyClass(class MyOtherClass* = 0) {}
Run Code Online (Sandbox Code Playgroud)

什么是class关键字是什么意思?构造函数是否采用MyOtherClass指针并将参数默认为空指针?

c++ constructor class

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

如何定义包中的哪些变量或函数被导出

我的R包使用内部变量x.如果我加载包(我只尝试使用devtools::load_all),然后x没有出现在ls()列表中,但它确实有一个值.我怎么能避免这个?

我很好,用户可以使用myPackage::x但不是简单地访问变量x.

namespaces export r devtools package

5
推荐指数
2
解决办法
4015
查看次数

如何追加到 R 历史文件而不是覆盖?

我把这个放在我的.Rprofile

Sys.setenv(R_HISTSIZE='1000000')
Sys.setenv(R_HISTFILE='~/.Rhistory')

.Last <- function() {
    if(interactive()) try(savehistory("~/.Rhistory"))
}
Run Code Online (Sandbox Code Playgroud)

退出 R 会话后,历史记录将写入文件,但文件被覆盖!如何让 R 追加到历史文件中?

r

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

如何更新SurfaceView?

我扩展了SurfaceView并设法在Activity中绘制它.Activity应该能够在我的SurfaceView上调用一个方法来改变一些参数并重绘它.如何实现更新功能?

这是我的班级:

public class MySurfaceView extends SurfaceView
                                    implements SurfaceHolder.Callback {

    private int circleRadius = 50;
    private SurfaceHolder sh;
    private final Paint paint = new Paint(Paint.ANTI_ALIAS_FLAG);

    public MySurfaceView(Context context, AttributeSet as) {
        super(context,as);
        sh = getHolder();
        sh.addCallback(this);
        paint.setColor(Color.BLUE);
        paint.setStyle(Style.FILL);
    }
    public void surfaceCreated(SurfaceHolder holder) {
        Canvas canvas = sh.lockCanvas();
        canvas.drawColor(Color.BLACK);
        canvas.drawCircle(100, 200, circleRadius, paint);
        sh.unlockCanvasAndPost(canvas);
    }
    public void update( newRadius ) {
        circleRadius = newRadius;
        // What more?
    }
}
Run Code Online (Sandbox Code Playgroud)

update重绘一切应包含哪些内容?这与此有关surfaceChanged吗?

java android surfaceview

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

哪些g ++开关可以帮助我编写好的代码,比如-Wall -Werror?

我刚进入C++编程.哪个命令行开关是一个好主意,以帮助我编码?

我正在通过编写一些小程序来学习C++.我希望我的代码尽可能好(以开发和编译时为代价).例如,警告可移植性问题,未定义行为和非idomatic代码的开关将是有用的.

我知道-Wall -Werror.还有其他人吗?

c++ g++

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

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

静态成员变量如何在C++中使用多态?

我想在子类中存储静态字符串,以便它们不会在内存中重复.可以这样做吗?我希望能够实例化两个IBM,但只将字符串"IBM"放入内存中.

class Company {
    static const std::string company_name;
}
class CocaColaCompany : public Company {
    static const std::string company_name = "Coca Cola";
}
class IBM : public Company {
    static const std::string company_name = "IBM";
}
Run Code Online (Sandbox Code Playgroud)

或者使用具有多态基类的静态成员是否存在问题?

c++ polymorphism static

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

如何在Matlab中存储这个结构(整数列表)?

我需要存储一个整数列表.例如,X[1]应该能够包含[1 3 5]虽然X[2]可以包含[1 2].什么是最好的解决方案?一个单元阵列?


背景故事:

对于项目,我预先计算N行和M立方体之间的交叉点.这些是以两种方式检索的:给定一个行索引,我想要一个它通过的立方体列表,并给定一个立方体索引,我想要一个通过它的行列表.

典型值是N = 2 ^ 24且M = 2 ^ 18,这意味着交叉矩阵(NxM)是不可能的.幸运的是,平均线仅通过M ^(1/3)= 2 ^ 6个立方体.目前,我将结构存储为NxM ^(1/3)矩阵,因此这X(n,:)是第n行穿过的多维数据集向量(用零填充).

这适用于检索给定列表索引的多维数据集,但事实证明我的代码的瓶颈是给定多维数据集索引的行的检索.(我这样做,find(X==m)其中m是立方体索引.)我不能创建相反的矩阵,因为通过单个立方体的行数可能非常高,即使它平均很低.

matlab data-structures

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