小编drp*_*per的帖子

在Linux上断言失败后继续调试?

当在Windows上使用Visual C++断言失败时,调试器会停止,显示消息,然后让您继续(或者,如果没有运行调试会话,则提供为您启动Visual Studio).

在Linux上,似乎assert()的默认行为是显示错误并退出程序.由于我的所有断言都通过宏,我试图使用信号来解决这个问题,比如

#define ASSERT(TEST) if(!(TEST)) raise(SIGSTOP);
Run Code Online (Sandbox Code Playgroud)

但是虽然GDB(通过KDevelop)停在正确的位置,但我似乎无法继续通过信号,并且在GDB内手动发送信号只会让我感到不知所措,无论是GDB还是调试过程都无法控制.

c c++ linux gdb assert

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

内存分页期间可以运行其他进程吗?

首先,采用单处理器系统,其中多个进程以伪并行方式运行.当进程触发页面错误时,这会强制CPU停止执行所有程序,直到从磁盘加载页面为止?

如果是这样,这在多核或多处理器系统上是否会发生变化,或者在处理页面错误时其他进程是否可以继续读取和写入内存?

谢谢!

memory multithreading multiprocessing virtual-memory

7
推荐指数
1
解决办法
584
查看次数

C++有任何线程安全的图形库吗?

基本上我正在寻找一个图形库,它可以在图形操作周围进行细粒度锁定,这样触摸图形不同部分的不同线程可以同时改变它,并且可以阻止竞争修改.

我google了一下,找不到任何东西.也许这对我的需求来说过于具体,但我想可能存在大量适用于大型图表的科学应用程序.

c++ multithreading graph thread-safety

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

Hello World失败并显示"错误:无法解析<s:Application>到组件实现"

我刚开始使用Linux上的Adobe Flex,并且无法获得hello world示例.

我的application.mxml文件很简单

<?xml version="1.0"?>

<s:Application xmlns:fx="http://ns.adobe.com/mxml/2009" 
    xmlns:mx="library://ns.adobe.com/flex/mx" 
    xmlns:s="library://ns.adobe.com/flex/spark">
    <s:layout>
        <s:VerticalLayout/>
    </s:layout>

    <s:Panel title="My Application">
        <s:Label text="Hello World" fontWeight="bold" fontSize="24"/>
    </s:Panel>
</s:Application>
Run Code Online (Sandbox Code Playgroud)

我按照本指南在Linux上安装Flex(OpenSUSE 11.2),解压缩到/ opt/flex.

但是我在编译时遇到了这个错误:

/opt/flex> mxmlc -show-actionscript-warnings=true --strict=true /path/to/application.mxml
Loading configuration file /opt/flex/frameworks/flex-config.xml
/path/to/application.mxml(5): Error: Could not resolve <s:Application> to a component implementation.

    xmlns:s="library://ns.adobe.com/flex/spark">
Run Code Online (Sandbox Code Playgroud)

我已经浏览了/opt/flex/frameworks/flex-config.xml并添加${flexlib}到帖子建议的所有路径引用中.但仍然没有运气.

有任何想法吗?谢谢.

apache-flex mxml

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

我可以从模板类中提取C++模板参数吗?

基本上,给定一个这样的模板类:

template< class Value > class Holder { }; 
Run Code Online (Sandbox Code Playgroud)

我希望能够发现Value给定Holder类的类型.我以为我能够创建一个带有模板模板参数的简单元函数,如下所示:

template< template< class Value > class Holder > class GetValue
{
    typedef Value Value;
};
Run Code Online (Sandbox Code Playgroud)

然后提取出这样的Value类型:

GetValue< Holder< int > >::Value value;
Run Code Online (Sandbox Code Playgroud)

但我只是得到一个指向元函数声明的错误消息:

error: ‘Value’ does not name a type
Run Code Online (Sandbox Code Playgroud)

有没有办法完成这种事情?谢谢.

[编辑]我也收到错误消息:

error: type/value mismatch at argument 1 in template parameter list for ‘template<template<class Value> class Holder> class GetValue’
error:   expected a class template, got ‘Holder<int>’
Run Code Online (Sandbox Code Playgroud)

这让我得出结论,Phil Nash是对的,你不能将一个类作为模板模板参数传递.

c++ templates metaprogramming

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