问题列表 - 第8026页

C++:向量"腐败"的第一个元素

我有一个包含向量的类(foo).

如果我尝试迭代向量中的元素,如下所示:

for(vector<random>::iterator it = foo.getVector().begin();
        it != foo.getVector().end(); ++it) {
  cout << (*it) << endl;

}
Run Code Online (Sandbox Code Playgroud)

第一个元素总是被破坏并返回垃圾数据.

但是,如果做的事情如下:

 vector<random> v = foo.getVector();
 for(vector<random>::iterator it = v.begin();
            it != v.end(); ++it) {
      cout << (*it) << endl;

 }
Run Code Online (Sandbox Code Playgroud)

一切似乎都很好.有一个我不知道的"陷阱"吗?

我也尝试过做cout << foo.getVector()[0] << endl; 循环之外,但似乎工作正常.

谢谢.

编辑:

这是我的头文件:

#ifndef HITS
#define HITS

#include <vector>
#include "wrappers.h"

class Hits {

    public:
        Hits();
        std::vector<word_idx_value> getVector() {return speech_hits;}
        const std::vector<word_idx_value> getVector() const {return speech_hits;}
        void add(const word_idx_value&);
        Hits &operator+=(const Hits&);
    private:
        std::vector<word_idx_value> speech_hits; …
Run Code Online (Sandbox Code Playgroud)

c++ iterator stl cout vector

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

https协议和SSL证书之间的区别

我们在Web浏览器中使用的https协议和SSL证书有什么区别?

这些都不是用于加密客户端(浏览器)和服务器之间的通信吗?

ssl https protocols ssl-certificate

50
推荐指数
3
解决办法
6万
查看次数

Linq to XML vs DOM

在我们正在开发的一个应用程序中,我们进行了大量的XML处理.目前我们使用DOM和XPath进行大部分处理,我们对性能不太满意.

目前我们正在考虑将XML处理逻辑转移到LINQ,我们的初步研究表明LINQ性能远优于DOM.

在做出这些改变之前,我想知道其他人对此的看法.使用LINQ是更好的选择吗?任何不满等......

谢谢,Shamika


非常感谢您的回答.我做了一些性能测试,正如预期的那样,XmlReader out执行了XmlDocument和LINQ.请注意,这仅适用于XML阅读.

此外,如果您需要LINQ的易用性,您可以通过使用XmlReader的某些功能来实现LINQ XML处理,并且可以获得比XmlDocument更好的性能.有关更多信息,请参阅"rwwilden"评论.

谢谢.

c# linq xpath dom

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

如何改进这个平方根方法?

我知道这听起来像是家庭作业,但事实并非如此.最近我一直对用于执行某些数学运算的算法感兴趣,例如正弦,平方根等.目前,我正在尝试编写用C#计算平方根的巴比伦方法.

到目前为止,我有这个:

public static double SquareRoot(double x) {
    if (x == 0) return 0;

    double r = x / 2; // this is inefficient, but I can't find a better way
                      // to get a close estimate for the starting value of r
    double last = 0;
    int maxIters = 100;

    for (int i = 0; i < maxIters; i++) {
        r = (r + x / r) / 2;
        if (r == last)
            break;
        last = r; …
Run Code Online (Sandbox Code Playgroud)

c# algorithm math optimization performance

5
推荐指数
2
解决办法
7284
查看次数

为什么本机DLL不会复制到输出目录

我有一个C#项目A,它使用.net包装器DLL和本机DLL.我将.net包装器DLL添加到项目A的引用列表中.由于包装器DLL仅在本机DLL处于同一文件夹时使用,因此应将本机DLL复制到项目A的输出目录中.我实现了这一点通过将本机DLL添加为项目A下的内容文件,并将其复制操作设置为在较新时复制.这可以.

如果一个C#项目B具有直接的参考项目A,VS将复制使用项目A到B项目的输出目录这意味着包装DLL和本地DLL将被复制到B项目的输出目录,以及所有相关文件.这也很好.

然后我还有另一个C#项目C,它只直接引用项目B,而不是项目A.有趣的是,VS不会将本机DLL复制到项目C的输出目录,否则我打算这样做当项目C使用项目B的功能并查找本机DLL以使用包装器DLL时,它将找不到它.

有人可以解释为什么VS不将本机DLL复制到项目C的输出目录中?在VS中复制依赖链的文件的机制是什么?非常感谢.

c# dll visual-studio-2008

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

如何在Windows XP上使用PHP?

我想在Windows XP上用PHP做一个示例程序.

我是否需要任何特殊软件才能使其正常工作?

我担心我只需打开记事本键入PHP程序并使用php扩展名保存.然后我用浏览器打开它作为HTML文件.但它不起作用.

请帮忙

提前致谢

php

0
推荐指数
2
解决办法
4096
查看次数

文本框中不允许为零

我需要一个只有用户可以允许输入整数的文本框.但是用户不能输入零​​.也就是说,他可以输入10,100等而不是0.如何在KeyDown中创建活动?

c# forms wpf input-filtering

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

wordwrap一个很长的字符串

如何显示长字符串,网站地址,字符或符号集以及自动换行符以保持div宽度?我猜各种各样的文字包装.通常添加一个空间有效,但有一个CSS解决方案,如自动换行?

例如,它(非常nastily)重叠的div,迫使水平滚动等wwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwww

我可以添加到上面的字符串中以便在div中的几行内或浏览器窗口中整齐地放入它?

css string word-wrap long-integer

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

C#后台工作者在DoWork中设置e.Result并在WorkCompleted中获取值

C#2008 SP1

我正在使用后台工作者

如果其中一个条件失败,我将e.cancel设置为true,并将字符串分配给e.result.一切都在那里工作.

但是,当workCompleted触发时,我测试了e.Result并且我得到一个异常"e.result抛出systeminvalidoperation类型的异常".

我想我可以使用全局变量在DoWork中设置并在完成的工作中进行比较.但这可能不是线程安全的.

任何人都可以告诉我为什么我用e.Result得到这个,我该如何解决这个问题?

非常感谢,

    private void bgwPrepareCall_DoWork(object sender, DoWorkEventArgs e)
    {
        // Check to see if the called number is blocked. 
        // If the nubmer is blocked display error message.
        if (this.IsNoGateway(sipUsername, statusDisplay1.PhoneNumber))
        {
            // this.SetIdleState(DialerErrorMessage.GetErrorDescription(12));
            e.Cancel = true;
            e.Result = "NoGateway";
            return;
        }

        if (!this.IsInvalidTelephoneNumber(sipUsername, statusDisplay1.PhoneNumber))
        {
            // this.SetIdleState(DialerErrorMessage.GetErrorDescription(13));
            e.Cancel = true;
            e.Result = "InvalidNumber";
            return;
        }
    }

    private void bgwPrepareCall_RunWorkerCompleted(object sender, RunWorkerCompletedEventArgs e)
    {
        if (e.Error == null)
        {
            if (e.Cancelled)
            {
                // Failed …
Run Code Online (Sandbox Code Playgroud)

c# backgroundworker

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

Javascript中新的Boolean()的目的是什么?

有什么用?

var flag = new Boolean(false); 
Run Code Online (Sandbox Code Playgroud)

相比:

var flag = false;
Run Code Online (Sandbox Code Playgroud)

你什么时候实际使用new Boolean

javascript boolean

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