小编cbu*_*art的帖子

为什么#include <string>会阻止堆栈溢出错误?

这是我的示例代码:

#include <iostream>
#include <string>
using namespace std;

class MyClass
{
    string figName;
public:
    MyClass(const string& s)
    {
        figName = s;
    }

    const string& getName() const
    {
        return figName;
    }
};

ostream& operator<<(ostream& ausgabe, const MyClass& f)
{
    ausgabe << f.getName();
    return ausgabe;
}

int main()
{
    MyClass f1("Hello");
    cout << f1;
    return 0;
}
Run Code Online (Sandbox Code Playgroud)

如果我注释掉,#include <string>我没有得到任何编译器错误,我想因为它包含在内#include <iostream>.如果我在Microsoft VS中"右键单击 - >转到定义",它们都指向xstring文件中的同一行:

typedef basic_string<char, char_traits<char>, allocator<char> >
    string;
Run Code Online (Sandbox Code Playgroud)

但是当我运行我的程序时,我收到一个异常错误:

OperatorString.exe中的0x77846B6E(ntdll.dll):0xC00000FD:堆栈溢出(参数:0x00000001,0x01202FC4)

知道为什么我在评论时出现运行时错误#include <string> …

c++ stack-overflow string explicit

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

hash_map和unordered_map之间的区别?

我最近发现将调用C++中哈希映射的实现unordered_map.

当我抬起头,为什么他们不只是使用hash_map,我发现,显然有与实施的兼容性问题hash_mapunordered_map可以解决(更多关于它在这里).

该wiki页面没有提供更多信息,所以我想知道是否有人知道hash_mapunordered_map解决方案的一些问题.

c++ stl unordered-map hashmap

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

Qt Creator Android错误"安装了Platform SDK"

我正在为Android开发Qt Cross平台应用程序,最近我更新了Qt creator和Installed new Qt版本.我在用'Qt Creator version 4.5.0'.我已更新到'QT version 5.10'.此设置在Ubuntu 16.04上完成.

以下链接QT安装入门.

我总是在Qt Creator->工具 - >选项 - >设备 - > Android中收到错误消息"Android设置有错误".

QT Android安装问题

由于上述问题,我无法为Android构建应用程序.

我最近更新了我的Android sdk,我能够从Android Studio构建和运行Sample应用程序,表明SDK安装正常.我使用的是Android SDK工具26.1.1.请检查以下屏幕截图.

Android Studio SDK管理器

Android SDK构建工具已安装. 在此输入图像描述

已安装Android SDk平台 在此输入图像描述

已经通过Stack Overflow和QT论坛上的不同链接,所有都是建议降级Android SDK工具(由于QT已知错误),但没有一个解决方案适合我.我知道使用QT 5.9和Qt Creator 4.0版构建Android应用程序的知识很少.我猜它已经解决了,因为同样的设置在Windows 10上工作正常.

QT Creator不会列出任何可用的Android Build SDK QT Android安装错误

如果有人在这里解决了同样的问题,请帮忙.

c++ qt android android-sdk-tools qt5.10

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

Python的subprocess.call和subprocess.run之间有什么区别

我一直试图了解一段时间,现在subprocess.call和之间的区别是什么subprocess.run.我知道最后一个是Python 3.5上的新内容,两者都基于subprocess.Popen,但我还不能理解其中的差异.

python subprocess

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

是否可以从const方法发出Qt信号?

特别是,我正在为QWizard实现一个QWizardPage("MyWizardPage"),我想从我的QWizardPage :: nextId虚拟方法的覆盖中发出一个信号("sigLog").

像这样:

class MyWizardPage
    : public QWizardPage
{
    Q_OBJECT
public:
    MyWizardPage();
    virtual int nextId() const;
Q_SIGNALS:
    void sigLog(QString text);
};

int MyWizardPage::nextId() const
{
    Q_EMIT sigLog("Something interesting happened");
}
Run Code Online (Sandbox Code Playgroud)

但是当我尝试这个时,我在Q_EMIT行上得到以下编译错误:

错误1错误C2662:'MyWizardPage :: sigLog':无法将'this'指针从'const MyWizardPage'转换为'MyWizardPage&'

qt signals-slots

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

moveToThread vs从Qt中的QThread派生

什么时候应该moveToThread优先于子类QThread

此链接显示两种方法都有效.我应该在什么基础上决定从这两者中使用什么?

c++ qt multithreading

23
推荐指数
3
解决办法
1805
查看次数

正确使用Poco C++ JSON来解析数据

任何人都可以告诉我Poco C++ JSON的工作原理吗?

以前我用过JsonReader和JsonToken.Poco C++库似乎没有相应的对象.

例如,我如何使用json解析器创建一个包含标记名称的JSON值的对象名称?

c++ json poco-libraries

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

如何使用Wix安装Open Type字体

我想安装一组打开类型字体作为我的MSI安装的一部分.我正在使用Wix来创建MSI.

有什么建议?

installation fonts wix

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

我可以自己杀死一个进程吗?

我有一些代码在进程被终止时执行,我是否可以实际调用kill(getpid())以强制执行此代码(并显然关闭进程)?

c unix process

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

C++将未知类型传递给虚函数

我正在用C++编写,我想将一个未知类型(仅在运行时知道)传递给纯虚函数:

virtual void DoSomething(??? data);
Run Code Online (Sandbox Code Playgroud)

where DoSomething是派生类中纯虚函数的实现.

我打算使用模板,但因为它结果是虚函数和模板不能一起工作:C++类成员函数模板可以是虚拟的吗?

我想避免为我传递给函数的所有类使用基类(类似于C#中的对象).

提前致谢

c++ templates virtual-functions

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