本文整理汇总了C++中CArray::extent方法的典型用法代码示例。如果您正苦于以下问题:C++ CArray::extent方法的具体用法?C++ CArray::extent怎么用?C++ CArray::extent使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类CArray
的用法示例。
在下文中一共展示了CArray::extent方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: version4
void version4(CArray& A, CArray& B, int nIters)
{
Timer timer;
struct cmplx {
double re, im;
};
cmplx* a = (cmplx*)A.data();
cmplx* b = (cmplx*)B.data();
setup(A,B);
int N = A.extent(firstDim);
timer.start();
for (int i=0; i < nIters; ++i)
{
for (int j=0; j < N; ++j)
{
double ar = a[j].re;
double ai = a[j].im;
b[j].re += ar*ar - ai*ai;
b[j].im += 2 * ar * ai;
}
}
timer.stop();
cout << "Time using really low-level version: " << timer.elapsedSeconds()
<< endl;
}
示例2: version3
void version3(CArray& A, CArray& B, int nIters)
{
Timer timer;
int N = A.extent(firstDim);
// Low-level implementation
setup(A,B);
timer.start();
for (int i=0; i < nIters; ++i)
{
for (int j=0; j < N; ++j)
B(j) += A(j) * A(j);
}
timer.stop();
cout << "Time using low-level version: " << timer.elapsedSeconds()
<< endl;
}