相关疑难解决方法(0)

在C++中使用C头时,我们应该使用std ::或全局命名空间中的函数吗?

C在某种程度上并不完全是C++的一个子集.因此,我们可以通过更改名称(stdio.hto cstdio,stdlib.hto cstdlib)来使用C++中的大多数C函数/头文件.

我的问题实际上是一种语义.在C++代码(使用GCC编译器的最新版本),我可以打电话printf("Hello world!");,并std::printf("Hello world!");和它的工作原理完全一样.在我使用它的参考中也显示为std::printf("Hello world!");.

我的问题是,它是否更适合std::printf();在C++中使用?有区别吗?

c++ std language-lawyer

106
推荐指数
3
解决办法
6042
查看次数

什么标准调用实际上是宏

在这里问了一个问题关于assert哪个在标准中作为宏实现,而不是函数。

这给我带来了一个问题,因为assert它采用参数的方式似乎是一个函数:assert(true)因此我试图将它用作:std::assert(true)当然是一个不起作用的宏。

我的问题是:标准库是否提供了任何其他宏,这些宏会显示为带参数的函数?

c++ parameters macros assert namespaces

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

标签 统计

c++ ×2

assert ×1

language-lawyer ×1

macros ×1

namespaces ×1

parameters ×1

std ×1