小编Rém*_*émi的帖子

如何在C/C++文件中检测android ndk的编译?

是否有预处理器宏让我知道ndk正在编译我的代码?我可以手动定义自己的,但如果可能,我宁愿不要.

android preprocessor android-ndk

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

什么时候使用std :: pair好?

我的印象是,定义自己的结构总是更好,这样我就可以使用有意义的字段名而不是firstsecond.

标准使用的一个地方std::pair是访问元素std::map.first是关键和second价值.拥有一个特定的key_value_pair模板并不是更好,并将其字段称为keyvalue不是firstsecond?在我看来,这将使代码更加可读,免费.

c++ coding-style std-pair

12
推荐指数
1
解决办法
2605
查看次数

C++在输入失败时应该保持变量不变吗?

C++不能保证在输入失败时保持变量不变吗?对于旧版本的gcc,像这样的程序会将i的-1值保持为失败(例如,如果输入的是字母而不是输入的数字).使用Ubuntu 10.10(gcc 4.4.5)时,如果输入失败,i将重置为零.

#include <iostream>

int main()
{
 int i = -1;
 std::cin >> i;
 std::cout << "i = " << i << '\n';
 return 0;
}
Run Code Online (Sandbox Code Playgroud)

这种行为打破了我的很多代码.我想gcc的人都知道他们在做什么,这很可能是我的错.如果有人知道这个标准,我想知道它对这种情况的看法.

谢谢.

c++ iostream

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

Atmel Studio 6 没有用于 C++ 的 new 和 delete 运算符

我在 Atmel Studio 6 中使用了 ATMega32 uc。我有一些包含new操作符的代码。当我尝试使用它时,它说它没有定义,我不知道为什么。

我在谷歌上搜索了一些东西,但我还没有找到任何相关的东西。我能找到的只是定义newdelete操作符的代码片段,但我真的不想这样工作。也nullptr不见了。

还有其他解决方案吗?

c++ avr atmel

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