小编and*_*and的帖子

C/C++中整数除法的快速上限

给定整数值,x并且yC和C++都返回作为q = x/y浮点等效的底数的商.我对一种返回天花板的方法很感兴趣.例如,ceil(10/5)=2ceil(11/5)=3.

显而易见的方法包括:

q = x / y;
if (q * y < x) ++q;
Run Code Online (Sandbox Code Playgroud)

这需要额外的比较和乘法; 我见过的其他方法(事实上使用)涉及铸造为floatdouble.是否有更直接的方法可以避免额外的乘法(或第二个除法)和分支,并且还可以避免作为浮点数进行转换?

c c++ algorithm math

241
推荐指数
8
解决办法
14万
查看次数

在Qt,QtCreator和QMake中配置GCC编译器

我最近尝试在Windows 7(64位)上使用Qt Creator 1.3.2,Qt 4.6.2和GCC 4.4.0(32位版本)来编译使用一些实验性C++ 0x扩展的应用程序遇到以下(致命)错误:

此文件需要编译器和库支持即将推出的ISO C++标准C++ 0x.此支持目前是实验性的,必须使用-std = c ++ 0x或-std = gnu ++ 0x编译器选项启用.

在我寻找解决方案时,我遇到了线程qmake和编译器标志?,并将以下内容添加到.pro文件中:

CXXFLAGS += -std=c++0x
Run Code Online (Sandbox Code Playgroud)

但这似乎没有什么区别.

所以,我希望有一些标签需要添加到.pro(项目)文件中,但我以前从未弄过Qt,QMake和QtCreator中的GCC编译器开关,我不确定正确的调用/咒语.所以,我的问题是如何在使用QtCreator,QMake和Qt时设置GCC编译器开关?

c++ qt qt-creator c++11

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

为什么std :: strstream已被弃用?

我最近发现std::strstream有人不赞成使用std::stringstream.自从我使用它已经有一段时间了,但它确实做了我当时需要做的事情,所以听到它的弃用感到惊讶.

我的问题是为什么做出这个决定,以及没有std::stringstream提供哪些好处std::strstream

c++ stringstream strstream

69
推荐指数
4
解决办法
3万
查看次数

如何在C++中实现垃圾收集

我在C中看到了一些关于实现GC的帖子,有些人说这是不可能的,因为C是弱类型的.我想知道如何在C++中实现GC.

我想要了解如何做到这一点.非常感谢你!

这是我朋友告诉我的彭博采访问题.那时他做得很糟糕.我们想知道您对此的看法.

c++ garbage-collection

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

如何在后端数据库异步更改时刷新JPA实体?

我有一个PostgreSQL 8.4数据库,其中包含一些表和视图,这些表和视图基本上是连接在某些表上的.我使用的NetBeans 7.2(如描述这里)来从这些观点和表中派生的基于REST的服务,并部署那些到Glassfish的3.1.2.2服务器.

还有另一个进程异步更新用于构建视图的一些表中的内容.我可以直接查询视图和表格,看看这些变化是否正确发生.但是,从基于REST的服务中提取时,这些值与数据库中的值不同.我假设这是因为JPA已经缓存了Glassfish服务器上的数据库内容的本地副本,JPA需要刷新关联的实体.

我尝试将一些方法添加到NetBeans生成的AbstractFacade类中:

public abstract class AbstractFacade<T> {
    private Class<T> entityClass;
    private String entityName;
    private static boolean _refresh = true;

    public static void refresh() { _refresh = true; }

    public AbstractFacade(Class<T> entityClass) {
        this.entityClass = entityClass;
        this.entityName = entityClass.getSimpleName();
    }

    private void doRefresh() {
        if (_refresh) {
            EntityManager em = getEntityManager();
            em.flush();

            for (EntityType<?> entity : em.getMetamodel().getEntities()) {
                if (entity.getName().contains(entityName)) {
                    try {
                        em.refresh(entity);
                        // log success
                    }
                    catch (IllegalArgumentException e) {
                        // log failure ... …
Run Code Online (Sandbox Code Playgroud)

java postgresql netbeans jpa glassfish

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

如何使用Maven和wsimport从wsdl生成类?

当我尝试运行"mvn generate-sources"时,这是我的输出:

SLF4J: Failed to load class "org.slf4j.impl.StaticLoggerBinder".
SLF4J: Defaulting to no-operation (NOP) logger implementation
SLF4J: See http://www.slf4j.org/codes.html#StaticLoggerBinder for further details.
[INFO] Scanning for projects...
[INFO]                                                                         
[INFO] ------------------------------------------------------------------------
[INFO] Building gensourcesfromwsdl 0.0.1-SNAPSHOT
[INFO] ------------------------------------------------------------------------
[INFO] ------------------------------------------------------------------------
[INFO] BUILD SUCCESS
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 0.104s
[INFO] Finished at: Tue Aug 20 15:41:10 BST 2013
[INFO] Final Memory: 2M/15M
[INFO] ------------------------------------------------------------------------
Run Code Online (Sandbox Code Playgroud)

我没有收到任何错误,但没有从wsdl文件生成的java类.

这是我正在运行插件的pom.xml文件:

<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
    <modelVersion>4.0.0</modelVersion>
    <groupId>gensourcesfromwsdl</groupId>
    <artifactId>gensourcesfromwsdl</artifactId>
    <version>0.0.1-SNAPSHOT</version>

    <build>
        <pluginManagement>
            <plugins>
                <plugin>
                    <groupId>org.codehaus.mojo</groupId>
                    <artifactId>jaxws-maven-plugin</artifactId>
                    <version>1.12</version>
                    <executions>
                        <execution> …
Run Code Online (Sandbox Code Playgroud)

wsimport maven

30
推荐指数
3
解决办法
11万
查看次数

std :: valarray的未来是什么样的?

直到最近,我还没有跟上C++ 11的讨论.当我试图更熟悉它和正在处理的问题时,我遇到了这个网站似乎主张弃用或删除,std::valarray因为大多数人都在使用Blitz ++.我想我可能是那里仍然使用的少数几个人之一std::valarray(是的,我知道这个班有一个肮脏的过去,一个失去光泽的礼物,一个可疑的未来).但是,它做了我需要的,也许更重要的是,它是标准的一部分(现在任何方式).

除了上面的一个网站,我已经能够找到很少关于std::valarray新标准实际发生的事情,并且希望SO上的某些人能够提供一些洞察力和/或参考资料,包括谷歌,维基百科和即使是C++标准委员会网站到目前为止也没有让我失望.谢谢.

c++ numerics c++11

29
推荐指数
1
解决办法
2157
查看次数

如何在Web服务中使用JAXBElement <String>?

我正在使用WCF开发一个可互操作的Web服务,我正在从Java客户端使用它.当我创建代理类时,它生成了所有getter和setter方法以及一个JAXBElement<String>字段.我在JDK API中搜索了这个并找到了构造函数:

JAXBElement(QName name, Class<T> declaredType, Class scope, T value) 
Run Code Online (Sandbox Code Playgroud)

我该如何使用这个构造函数?请解释这些参数,如果互联网上有一个描述其用途的好教程,请告诉我.

java xml wcf web-services

25
推荐指数
5
解决办法
7万
查看次数

矩形 - 矩形交叉区域

下面是2个矩形.给定矩形顶点的坐标 - (x1,y1)...(x8,y8),如何重叠区域的面积(下图中的白色)?

注意:

  1. 积分坐标可能是任意的
  2. 矩形可以重叠也可以不重叠
  3. 当矩形不重叠时,假设面积为0,或者它们在点或线处重叠.
  4. 如果一个矩形在另一个矩形内,则计算较小矩形的面积.

在此输入图像描述

c++ math computational-geometry

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

如何为std :: vector <T>专门化模板成员函数

我需要以两种不同的方式定义get方法.一个用于简单类型T.一个用于std :: vector.

template<typename T>
const T& Parameters::get(const std::string& key)
{
    Map::iterator i = params_.find(key);
    ...
    return boost::lexical_cast<T>(boost::get<std::string>(i->second));
    ...
}
Run Code Online (Sandbox Code Playgroud)

我怎样才能为std :: vector专门化这个方法.因为代码应该看起来像这样:

template<typename T>
const T& Parameters::get(const std::string& key)
{
    Map::iterator i = params_.find(key);
    std::vector<std::string> temp = boost::get<std::vector<std::string> >(i->second)
    std::vector<T> ret(temp.size());
    for(int i=0; i<temp.size(); i++){
         ret[i]=boost::lexical_cast<T>(temp[i]);
    }
    return ret;    
}
Run Code Online (Sandbox Code Playgroud)

但我不知道如何专门为此功能.非常感谢.

c++ templates

24
推荐指数
1
解决办法
6834
查看次数