简体   繁体   English

QString到Const Char *

[英]QString to Const Char*

I'm trying to use the data from a function that returns a QString in a Const function that uses a Const Char*. 我正在尝试使用函数中的数据,该函数在使用Const Char *的Const函数中返回QString。 The problem is basically the following : 问题基本上如下:

int myObject::listChildProcesses([...]) const {
    // getProcessName called from : QString myObject::getProcessName() { [...] }
    const char* name = getProcessName().toLocal8Bit();
    [...]
}

Which returns : 哪个回报:

passing 'const myObject' as 'this' argument of 'QString myObject::getProcessName()' discards qualifiers

So ... I think there is a constness problem here. 所以......我认为这里存在一个常数问题。 However, I DO need to keep my constness in listChildProcess. 但是,我需要将我的constness保留在listChildProcess中。 Do you happen to know how I can solve that problem by keeping it ? 你碰巧知道如何通过保留它来解决这个问题吗?

It seems that myObject::getProcessName() doesn't have a const qualifier, but called for a constant object. 似乎myObject::getProcessName()没有const限定符,但是调用了一个常量对象。 So you should make change its signature to QString myObject::getProcessName() const . 因此,您应该将其签名更改为QString myObject::getProcessName() const

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM