相关疑难解决方法(0)

restrict关键字在C++中的含义是什么?

我总是不确定,在C++中,restrict关键字是什么意思?

是否意味着赋予函数的两个或更多指针不重叠?还有什么意思?

c++ restrict-qualifier

179
推荐指数
5
解决办法
10万
查看次数

const_cast安全吗?

我找不到太多的信息const_cast.我能找到的唯一信息(在Stack Overflow上)是:

const_cast<>()用于添加/删除变量的常量(岬)(或挥发性岬).

这让我很紧张.可能const_cast会导致意外行为?如果是这样,什么?

或者,什么时候可以使用const_cast

c++ casting const-cast

88
推荐指数
6
解决办法
5万
查看次数

const-correctness是否为编译器提供了更多优化空间?

我知道它提高了可读性并使程序不易出错,但它提高了多少性能?

在旁注中,参考和const指针之间的主要区别是什么?我会假设它们以不同的方式存储在内存中,但是如何呢?

c c++ pointers const const-correctness

76
推荐指数
3
解决办法
7302
查看次数

使变量成为常数的重要性是什么?

在什么情况下需要使变量恒定?

如果您希望变量始终保持相同的值,就可以不更改它吗?

c++ variables constants

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

声明C++变量const是否有助于或损害性能?

我理解 - const限定数据类型的行为.不过,我很好奇,如果由于合格变量的过度或不足而导致任何表现获得或损失const.我特别想到在隔离的代码块中声明和使用的变量.例如,类似于:

const qreal padding = CalculatePadding();
const QSizeF page_size = CalculatePagePreviewSize(padding);
const QRectF content_rect = CalculatePagePreviewContentRect(page_size);
const QList<QRectF> pages = renderer.BuildPrintPages(printer_, map_scene_);
const QFont page_number_font = CalculatePageNumberFont();
const QFontMetrics metrics(page_number_font);
Run Code Online (Sandbox Code Playgroud)

假设我const在所有这些方面只需要合格的方法(以及更多.)在声明它们时是否有任何性能提升const?或者,相反,这实际上是否会损害性能?

我很好奇两个运行时性能(我猜这没有区别,因为const它只是一个编译时检查 - 有人可以确认吗?)和编译时性能.我对c ++没有足够的经验来感受这一点,并且我想知道const当所有其他事情(可维护性等)相等时我是否应该在过度或不足的情况下犯错.

c++ performance const

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

"Const"在C++中做了什么其他的事情,然后告诉编译器特定的东西是只读的

好吧,我没有意识到这const可能像指针一样令人困惑.有人可以在步骤中解释下面的代码到底做了什么const

const int*const Method3(const int*const&)const;
Run Code Online (Sandbox Code Playgroud)

即使对于非新手程序员来说也是如此令人困惑.

c++ pointers const

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