小编min*_*rus的帖子

使用预处理器重新定义循环

我希望做一些有点邪恶的事情.我想重新定义for循环来修改条件.有没有办法做到这一点?

从GCC文档中,支持重新定义关键字:http://gcc.gnu.org/onlinedocs/cpp/Macros.html

我正在尝试做的是为C++制作一个"概率"包装器,看看我是否可以用它做任何有趣的事情.

#include <iostream>
#include <cstdlib>

#define P 0.85

#define RANDOM_FLOAT  ((float)rand()/(float)RAND_MAX)

#define RANDOM_CHANCE (RANDOM_FLOAT < P)

#define if(a) if((a) && RANDOM_CHANCE)

#define while(a) while((a) && RANDOM_CHANCE)


// No more for loops or do-while loops
#define do
#define goto

// Doesn't work :(
//#define for(a) for(a) if(!RANDOM_CHANCE) { break; } 


int main() {
    srand(time(NULL));

    //Should output a random list of Y's and N's
    for(int i=0; i < 100; ++i) {
        if(i < 100) {
            std::cout << …
Run Code Online (Sandbox Code Playgroud)

c++ c-preprocessor

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

VelocityTracker提供随机的看似结果

为了更好地理解视图是如何工作的,我正试图制作一个RelativeLayout我可以拖拽和甩动的东西.想法是捕获onTouch事件,设置RelativeLayout期间的布局参数ACTION_MOVE,然后使用a Scroller"fling"视图ACTION_UP.

为了跟踪Velocity,我正在使用VelocityTracker.当我拖动视图时,视图会按预期移动,但是VelocityTracker会产生看似随机的结果.

下面是我在屏幕上从左到右滑动手指的日志片段(两个数字是x和y速度).如你所见,有许多负数,y速度似乎比它应该大.

有谁知道我可能做错了什么?

03-30 20:37:29.857: DEBUG/SlidingListViewRow(21863): ACTION_MOVE    23.123592   11.537558
03-30 20:37:29.873: DEBUG/SlidingListViewRow(21863): ACTION_MOVE    356.74066   55.184505
03-30 20:37:29.888: DEBUG/SlidingListViewRow(21863): ACTION_MOVE    343.06155   43.027973
03-30 20:37:29.904: DEBUG/SlidingListViewRow(21863): ACTION_MOVE    248.62907   32.232735
03-30 20:37:29.927: DEBUG/SlidingListViewRow(21863): ACTION_MOVE    182.43666   22.957638
03-30 20:37:29.943: DEBUG/SlidingListViewRow(21863): ACTION_MOVE    157.40408   54.90605
03-30 20:37:29.959: DEBUG/SlidingListViewRow(21863): ACTION_MOVE    59.81672    15.241951
03-30 20:37:29.974: DEBUG/SlidingListViewRow(21863): ACTION_MOVE    45.65707    -8.753063
03-30 20:37:29.990: DEBUG/SlidingListViewRow(21863): ACTION_MOVE    62.7431 -23.311165
03-30 20:37:30.005: DEBUG/SlidingListViewRow(21863): ACTION_MOVE    82.24246    -20.412537 …
Run Code Online (Sandbox Code Playgroud)

android relativelayout touch-event

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

动画新的ng-grid行

如何在ng-grid中为新创建的行设置动画?

我想要的是,当新数据从服务器进入时,它会被添加到网格的开头,然后该行会发光几秒钟.

我已经尝试将ng-animate类添加到网格的rowTemplate中,但这是不成功的:

$scope.gridOptions = { 
    data: 'myData',
    rowTemplate: '<div style="height: 100%" class="reveal-animation"><div ng-style="{ \'cursor\': row.cursor }" ng-repeat="col in renderedColumns" ng-class="col.colIndex()" class="ngCell {{col.cellClass}}"><div class="ngVerticalBar" ng-style="{height: rowHeight}" ng-class="{ ngVerticalBarVisible: !$last }">&nbsp;</div><div ng-cell></div></div></div>'
};
Run Code Online (Sandbox Code Playgroud)

我的揭示动画(直接从ng-animate文档中解除)是:

.reveal-animation.ng-enter {
 -webkit-transition: 1s linear all;
 transition: 1s linear all;
 opacity: 0;
}

.reveal-animation.ng-enter.ng-enter-active {

 opacity: 1;
}
Run Code Online (Sandbox Code Playgroud)

但这似乎不适用于网格.

有没有办法实现这个目标?

这是我的尝试的一个Plunker http://plnkr.co/edit/iR9voQaFRREi0pjNLQgc?p=preview

<ul>在底部添加了一个来显示我想要的行为(并证明ng-animate正在工作).

javascript animation angularjs ng-animate ng-grid

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

TeamCity 和 CTest 测试结果

我为我的项目编写了许多单元测试,使用 CTest 执行。我想将结果集成到我的 TeamCity 构建中。我已经为我的测试框架 (Boost Test) 下载并设置了插件。

我遇到的问题是测试运行时 CTest 输出为Testing/Temporary/LastTest.log,而 TeamCity 试图从标准输出中读取结果。为了解决这个问题,我的测试步骤是。

make test
cat Testing/Temporary/LastTest.log
Run Code Online (Sandbox Code Playgroud)

这有效,但感觉就像一个黑客。

除了标准输出之外,还有什么方法可以让 TeamCity 从此文件中读取?或者,除了这个 LastTest.log 文件之外,还有什么方法可以告诉 ctest 输出到标准输出?

这个问题是类似的,但我希望它适用于所有输出,而不仅仅是失败:CMake:为 ctest 设置环境变量(或者自动从 ctest/make test 获取失败的测试输出)

teamcity ctest

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