小编cod*_*der的帖子

git推送到特定分支

即使在阅读了这个问题之后:git-push-current-branch,我仍然很难弄清楚我应该如何编写我的git push命令.正如问题链接中所提到的,文档中并不清楚.

我想用我的'真实世界'的例子.以下是我在git status分支顶层执行命令时看到的内容:

在分支amd_qlp_tester上

您的分支在5次提交之前超过'origin/amd_qlp_tester'.

等等...

所以我的分支名称是,amd_qlp_tester但它从主分支"分支"(如果由于我的SVN背景我的条款错误).但是还有名字`origin/amd_qlp_testser'

那我怎么说出我的推送命令呢?

是这些中的任何一个:

git push origin/amd_qlp_tester?
git push origin amd_qlp_tester?
git push amd_qlp_tester?
git push origin?
git push?
Run Code Online (Sandbox Code Playgroud)

git version-control push

79
推荐指数
3
解决办法
14万
查看次数

你能使用标准的c ++/c ++ 11实现一个没有"睡眠"的计时器吗?

我有以下代码(手工复制):

// Simple stop watch class basically takes "now" as the start time and 
// returns the diff when asked for.
class stop_watch {...}

// global var
std::thread timer_thread;

void start_timer(int timeout_ms)
{
    timer_thread = std::thread([timeout_ms, this](){
        stop_watch sw;
        while (sw.get_elapsed_time() < timeout_ms)
        {
            // Here is the sleep to stop from hammering a CPU
            std::this_thread::sleep_for(std::chrono::milliseconds(10));
        }

        // Do timeout things here...
        std::cout << "timed out!" << std::endl;
    })
}
Run Code Online (Sandbox Code Playgroud)

我不想太沉迷于我写的课程的细节,所以这是一个非常简化的版本.完整的类调用函数回调并具有取消计时器等的变量...

我只想专注于"睡眠"部分.我可以在没有睡眠的情况下实现这样的事情,还是有更好的方法来实现它? - 还是睡得很好? - 我认为睡眠通常是糟糕设计的标志(我已经读过几个地方)......但我想不出一种方法来实现没有一个计时器:(

附加说明:计时器应该能够随时停止/唤醒.只是为了清晰起见而添加它,因为它似乎影响了要采用的解决方案.在我的原始代码(不是这个代码片段)中,我使用了一个可以突破循环的原子bool标志.

c++ timer c++11

32
推荐指数
2
解决办法
4155
查看次数

FALSE和TRUE的奇怪定义,为什么?

在我正在研究的一些代码中,我遇到了对真相和虚假的奇怪的重新定义.我之前已经看过这样的事情,以便更加严格/确定地进行检查,但是这一点在我的脑海里有点奇怪,我想知道是否有人可以告诉我这些定义的原因是什么,请参阅下面我的评论旁边:

#define FALSE (1 != 1) // why not just define it as "false" or "0"?
#define TRUE (!FALSE)  // why not just define it as "true" or "1"?
Run Code Online (Sandbox Code Playgroud)

这个代码库还有许多其他奇怪的怪异.就像所有标准类型的重新定义一样:

#define myUInt32 unsigned integer // why not just use uint32_t from stdint?
Run Code Online (Sandbox Code Playgroud)

所有这些小"怪癖"让我觉得我错过了一些明显的东西,但我真的看不出这一点:(

注意:严格来说这是c ++代码,但它可以从'c'项目移植.

c c++ boolean

31
推荐指数
5
解决办法
6584
查看次数

学习嵌入式linux的技巧

我想学习嵌入式linux的基础知识.要做到这一点,我假设我需要购买某种硬件板并拥有linux内核代码.

我不知道从哪里开始这个,任何提示/指针都是最受欢迎的.理想情况下,我希望人们指出一个完整的系统(例如这个"带有linux的电路板套件",这些"手册"非常好).

成本也是一个因素,因为我个人而不是作为一个企业:)

非常感谢Code

starter-kits linux-kernel embedded-linux

24
推荐指数
3
解决办法
2万
查看次数

什么是取消点?

我试图了解c ++中的取消点究竟是什么.我读过了:

手册页什么是pthread取消点用于

但我在某些方面仍然有点困惑.例如,我正在使用文件write()函数.显然这是一个取消点.因此,当我调用write()时,我可以看到另一个线程可能开始处理(所以我的代码从写入线程切换到另一个线程),这通常发生在写入缓冲区已满并需要在写入之前清空时()可以成功/完成.

但在我看来,这不是一个线程的取消,而只是一个临时的阻塞/暂停,并没有线程"清理"做...

所以我的问题是,取消点是否与"阻塞点"有关? - 他们真的是一回事,还是有些不同?对取消点的清晰"顶级"描述将非常有用.

c++ cancellation

16
推荐指数
2
解决办法
8265
查看次数

如何在bash中运行应用程序并选择运行哪个监视器?

我有一个难以搜索答案的问题(我总是得到监视器操作的答案).我正在编写一个bash shell脚本来帮助我编写代码,我有两个监视器.

当我运行我已编译的可执行文件时,我想告诉它在特定的监视器上运行(即与我的终端打开的监视器不同,因此我可以在一个屏幕上查看调试并将应用程序放在另一个屏幕上).

我该怎么做呢?就像是:

./myProject > but run on monitor 2
Run Code Online (Sandbox Code Playgroud)

myProject我的二进制可执行文件在哪

谢谢大家.

linux qt

12
推荐指数
2
解决办法
2万
查看次数

如何在bash中列出所有背景pids

要么我无法正确地搜索我的搜索,要么答案不容易找到!,但我想弄清楚如何列出我的所有后台任务PID.例如:

到目前为止,我发现要列出我们使用的最后一个PID:

$!
Run Code Online (Sandbox Code Playgroud)

但现在我想在此之前列出任务的PID(如果存在),但我找不到如何做到这一点.不好意思我想列出我所有的后台任务PID.

我知道我们也可以找到最后的工作ID:

%% (last job in list)
%1 (first job in list)
%2 (second job in list)
Run Code Online (Sandbox Code Playgroud)

但是对于进程ID似乎没有用?

谢谢大家:)

bash background pid

12
推荐指数
3
解决办法
2万
查看次数

我在哪里可以获得libstdc ++.so.6.0.15文件的副本

我试图修复我的问题"GLIBCXX_3.4.15"未找到,这是相当好的文件修复.但它需要从某个地方获取文件"libstdc ++.so.6.0.15".

大多数解决方案告诉我从我编译c ++库的位置获取它.但是,我没有编译它,它来自我的Ubuntu安装,当我为该文件"找到"它没有找到.

所以,我想从某个地方下载它,但我无法在网上找到它.我曾试图将svn看:使用svn://gcc.gnu.org/svn/gcc,但无法找到它(它的巨大的!)

任何帮助非常感谢:)饲料

c++ file find libstdc++

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

将整数强制转换为枚举类型是否正确?

我的研究还没有得到答案(在SOF中),但我确信它之前肯定已经被问过了,如果有的话就会有所了解.

我在c ++中创建了一个枚举类型,然后我从消息头读取一个值,并希望将它存储到我的枚举类型的变量中,例如:

// My defined enum type
enum myNumType_t
{
    MY_NUM_UNKNOWN = 0,
    MY_NUM1 = 1,
    MY_NUM2 = 2,
    MY_NUM3 = 3,
    MY_NUM4 = 4,
    MY_NUM5 = 5,
};

// In the code
int main()
{
    myNum_t myNum = MY_NUM_UNKNOWN;
    myNum = getMessageNumType(); // returns an int

    return 0;
}
Run Code Online (Sandbox Code Playgroud)

所以,这段代码不能用c ++编译,因为它不能将int转换为myNum_t,这是公平的.那么如果我投了它,myNum = (myNum_t) getMessageNumType();这当然现在编译.但它做对了吗?如果返回的值超出myNum_t的范围会发生什么?这里有"最佳实践"吗?

c++ enumeration casting

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

windeployqt错过了一些库并获得了其他不需要的库

通常要部署一个Qt项目我:

  1. 继续运行它并找到它所抱怨的库缺失并添加它们直到没有更多.
  2. 使用依赖性walker来获取大部分信息(如果不是全部),然后返回选项1.
  3. 或者只是创建一个静态链接的版本(有时候会有痛苦)

所以我现在想尝试windeployqt,这对我来说是存在的 D:\install\Qt\5.5\mingw492_32\bin\

然后我用它运行:

D:\>D:\install\Qt\5.5\mingw492_32\bin\windeployqt.exe d:\software\build-qtGuiTestApp-Desktop_Qt_5_5_0_MinGW_32bit-Debug\debug

这是结果输出:

D:\software\build-qtGuiTestApp-Desktop_Qt_5_5_0_MinGW_32bit-Debug\debug\qtGuiTes
tApp.exe 32 bit, debug executable
Adding Qt5Svg for qsvgicond.dll
Skipping plugin qmldbg_qtquick2d.dll due to disabled dependencies.
Skipping plugin qmldbg_tcpd.dll due to disabled dependencies.
Direct dependencies: Qt5Core Qt5Network Qt5WebKitWidgets Qt5Widgets
All dependencies   : Qt5Core Qt5Gui Qt5Multimedia Qt5MultimediaWidgets Qt5Networ
k Qt5OpenGL Qt5Positioning Qt5PrintSupport Qt5Qml Qt5Quick Qt5Sensors Qt5Sql Qt5
WebKit Qt5WebKitWidgets Qt5Widgets
To be deployed     : Qt5Core Qt5Gui Qt5Multimedia Qt5MultimediaWidgets Qt5Networ
k Qt5OpenGL Qt5Positioning Qt5PrintSupport Qt5Qml Qt5Quick Qt5Sensors Qt5Sql Qt5
Svg Qt5WebKit …
Run Code Online (Sandbox Code Playgroud)

c++ windows deployment dll qt

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