相关疑难解决方法(0)

什么是复制省略和返回值优化?

什么是复制省略?什么是(命名)返回值优化?他们意味着什么?

它们会在什么情况下发生?有什么限制?

c++ optimization c++-faq return-value-optimization copy-elision

350
推荐指数
4
解决办法
7万
查看次数

评估在编译时不满意?

如果我的代码包含此constexpr字符串

constexpr char my_str[] = "hello";
Run Code Online (Sandbox Code Playgroud)

my_str包含有关其大小的信息的类型,即sizeof(my_str)常量6,可以在需要常量的任何地方使用。

strlen(my_str)呢 是否可以/也应该将其评估为编译时常数?

这是yes的示例:https : //ideone.com/2U65bN

这是一个没有的示例:http : //coliru.stacked-crooked.com/a/8cb094776dfc5969

标准对此有何看法?当然不是“也许”吗?

c++ language-lawyer constexpr

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

c编译器与c标准库的关系

最近,我一直在大量阅读有关glibc函数如何在Linux中包装系统调用的信息。但是,我想知道glibc和GNU C编译器之间的关系。
比方说,例如,我想编写自己的C Standard实现并编写一个名为“ newglibc”的新库,而我只需稍作更改即可。例如,在系统调用之前和之后,我都会进行更多检查和采取措施。我需要编写一个新的编译器吗?还是可以使用相同的GNU gcc编译器?

如果编译器与库完全分开,那么有人能够理论上在Windows系统上使用gcc,如果他们可以将其转换为.exe并提供Windows提供的标准C库呢?
谢谢

c compiler-construction winapi glibc

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