问题列表 - 第25042页

将函数传递给remove_if时出现C++编译错误

所以这是我的代码片段.


void RoutingProtocolImpl::removeAllInfinity()
{
  dv.erase(std::remove_if(dv.begin(), dv.end(), hasInfCost), dv.end()); 
}

bool RoutingProtocolImpl::hasInfCost(RoutingProtocolImpl::dv_entry *entry)
{
  if (entry->link_cost == INFINITY_COST)
  {
    free(entry);
    return true;
  }
  else
  {
    return false;
  }
}

Run Code Online (Sandbox Code Playgroud)

编译时我收到以下错误:


RoutingProtocolImpl.cc:368: error: argument of type bool (RoutingProtocolImpl::)(RoutingProtocolImpl::dv_entry*)' does not matchbool (RoutingProtocolImpl::)(RoutingProtocolImpl::dv_entry)'

c++ compiler-errors function-pointers

6
推荐指数
2
解决办法
2123
查看次数

在构造之前,在实例上调用非成员函数

我正在上课,这个疑问出现了.这是不是吗?行为?另一方面,我不确定它的推荐,或者它是一个好的做法.如果我确保在init函数中没有抛出异常,那么它是一个吗?

//c.h
class C{

    float vx,vy;
    friend void init(C& c);
public:
    C();

};


//c.cpp
C::C()
{
   init(*this);
}

void init(C& c) //throws() to ensure no exceptions ?
{
  c.vx = 0;
  c.vy = 0;
}
Run Code Online (Sandbox Code Playgroud)

提前致谢

c++ init undefined-behavior

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

如何创建图像数组?

我需要创建一个图像数组,每次点击时,新图像都会被放置在"视图"中.

在某个特定的持续时间内,我需要清除该图像阵列,以便从视图中清除所有图像.

例如,在按钮单击时,我想清除视图上的所有图像,通过点击,应立即清除.

ios-simulator

0
推荐指数
1
解决办法
7295
查看次数

可以在任何服务器上部署war文件吗?

如果这个问题很愚蠢,请原谅我.假设我使用WebSphere应用程序服务器使用Spring框架和MS SQL-Server数据库开发J2EE Web应用程序.我稍后为此应用程序创建一个WAR文件.

我可以在Tomcat服务器上部署此WAR文件而无需更改代码吗?或者我的问题是,这可以由仅提供Tomcat服务器的Web主机托管吗?如果是,是否需要更改代码?

如果无法部署,你可以建议我做什么,因为我还没有在tomcat服务器上开发任何应用程序.我开发的所有应用程序都使用RAD在Websphere App Server上.

java deployment websphere tomcat

6
推荐指数
1
解决办法
2101
查看次数

从调用返回另一个代理的Java.lang.reflect.Proxy在赋值时导致ClassCastException

所以我正在玩geotools,我想我会代理他们的一个数据访问类,并跟踪它们在代码中的使用方式.

我编写了一个动态代理并在其中包含了一个FeatureSource(接口),并且很高兴.然后我想看看一些由featureSource返回,以及在传递对象,因为FeatureSource做的主要工作是返回的FeatureCollection(FeatureSource类似于一个SQL数据源,并以的FeatureCollection SQL语句).

在我的InvocationHandler我刚刚通过的调用底层对象,打印出目标类/方法/指定参数和结果,我去了,但是对于返回的FeatureCollection(另一个接口)调用,我裹着该对象在我的代理服务器(在相同的类,但一个新的实例,应该不重要吗?)并返回它.BAM!Classcast异常:

java.lang.ClassCastException: $Proxy5 cannot be cast to org.geotools.feature.FeatureCollection  
    at $Proxy4.getFeatures(Unknown Source)  
    at MyClass.myTestMethod(MyClass.java:295)  
Run Code Online (Sandbox Code Playgroud)

调用代码:

FeatureSource<SimpleFeatureType, SimpleFeature> featureSource = ... // create the FS
featureSource = (FeatureSource<SimpleFeatureType, SimpleFeature>) FeatureSourceProxy.newInstance(featureSource, features);
featureSource.getBounds();// ok
featureSource.getSupportedHints();// ok

DefaultQuery query1 = new DefaultQuery(DefaultQuery.ALL);
FeatureCollection<SimpleFeatureType, SimpleFeature> results = featureSource.getFeatures(query1); //<- explosion here
Run Code Online (Sandbox Code Playgroud)

代理人:

public class FeatureSourceProxy  implements java.lang.reflect.InvocationHandler {

private Object target;
private List<SimpleFeature> features;

public static Object newInstance(Object obj, List<SimpleFeature> features) {
return java.lang.reflect.Proxy.newProxyInstance(
    obj.getClass().getClassLoader(), 
    obj.getClass().getInterfaces(), 
    new FeatureSourceProxy(obj, features)
);
}

private …
Run Code Online (Sandbox Code Playgroud)

java reflection proxy classcastexception geotools

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

Shell脚本参数解析

关于这类事情有很多问题,但我们想象一下我们的目标是安装了getopt和getopts的通用Linux系统(不是我们也会使用它们,但它们似乎很受欢迎)

如何解析long(--example | --example simple-option)和short argruments(-e | -esimple-example | -e simple-example)

linux shell parsing arguments

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

HTML和PHP简单的联系表单

我尝试通过HTML和PHP制作一个简单的联系表单,但表单似乎没有提交.它保留在HTML页面上,不会发布到php表单.

simple_form.html代码

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Simple Feedback Form</title>
</head>

<body>

<form action="send_simpleform.php" method="post">
<p>Your name<br />
<input name="sender_name" type="text" size="30" /></p>
<p>Email<br  />
<input name="sender_email" type="text" size="30" /></p>
<p>Message<br />
<textarea name="message" cols="30" rows="5"></textarea></p>
<input name="submit" type="button" value="Send This Form" />
</form>

</body>
</html>
Run Code Online (Sandbox Code Playgroud)

send_simpleform.php代码

<?
if (($_POST[sender_name] == "") || ($_POST[sender_email] == "") || ($_POST[message] == "") {
    header("Location: simple_form.php");
    exit;
}

$msg = "Email sent …
Run Code Online (Sandbox Code Playgroud)

html php

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

0x9B(155decimal)是一个特殊的控制字符吗?为什么ascii表中缺少它?

我正在开发一个嵌入式系统,而且我正在通过串口让它发送一定数量的数据.我缩小了它,发现如果消息中存在0x9B,它会破坏消息.

所以我在http://www.asciitable.com/上查找0x9b(155),它就丢失了!这不是一个奇怪的巧合!

任何想法,这是一个特殊的角色还是什么?

-edit-好的抱歉,伙计们,这不是造成这个的0x9b,它是一个0x11字符.哪个... drumroll ...是一个XON/XOFF角色.我在计算机上错误地将流控制作为xon/xoff,并且设备上没有流量控制!无论如何,谢谢你的帮助.

c embedded serial-port communication control-characters

8
推荐指数
2
解决办法
2741
查看次数

XML如何检查节点是否返回null?

我在c#中有这段代码

doc.SelectSingleNode("WhoisRecord/registrant/email").InnerText
Run Code Online (Sandbox Code Playgroud)

我怎样才能检查它是否返回null?

c# xml

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

使用HttpClient通过HTTPS信任所有证书

最近发布了一个关于HttpClient过度Https 的问题(在这里找到).我已经取得了一些进展,但我遇到了新的问题.和我的上一个问题一样,我似乎无法找到适合我的任何地方的例子.基本上,我希望我的客户端接受任何证书(因为我只指向一个服务器),但我一直在接受javax.net.ssl.SSLException: Not trusted server certificate exception.

所以这就是我所拥有的:


    public void connect() throws A_WHOLE_BUNCH_OF_EXCEPTIONS {

        HttpPost post = new HttpPost(new URI(PROD_URL));
        post.setEntity(new StringEntity(BODY));

        KeyStore trusted = KeyStore.getInstance("BKS");
        trusted.load(null, "".toCharArray());
        SSLSocketFactory sslf = new SSLSocketFactory(trusted);
        sslf.setHostnameVerifier(SSLSocketFactory.ALLOW_ALL_HOSTNAME_VERIFIER);

        SchemeRegistry schemeRegistry = new SchemeRegistry();
        schemeRegistry.register(new Scheme ("https", sslf, 443));
        SingleClientConnManager cm = new SingleClientConnManager(post.getParams(),
                schemeRegistry);

        HttpClient client = new DefaultHttpClient(cm, post.getParams());
        HttpResponse result = client.execute(post);
    }
Run Code Online (Sandbox Code Playgroud)

这是我得到的错误:

    W/System.err(  901): javax.net.ssl.SSLException: Not trusted server certificate 
    W/System.err(  901):    at org.apache.harmony.xnet.provider.jsse.OpenSSLSocketImpl.startHandshake(OpenSSLSocketImpl.java:360) 
    W/System.err(  901): …
Run Code Online (Sandbox Code Playgroud)

java ssl https certificate apache-httpclient-4.x

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