小编Ara*_*raK的帖子

什么是nullptr?

我们现在拥有许多新功能的C++ 11.一个有趣且令人困惑的(至少对我来说)是新的nullptr.

嗯,不再需要令人讨厌的宏了NULL.

int* x = nullptr;
myclass* obj = nullptr;
Run Code Online (Sandbox Code Playgroud)

尽管如此,我还没有得到如何nullptr运作.例如,维基百科的文章说:

C++ 11通过引入一个new 关键字作为一个区分空指针常量来解决这个问题:nullptr.它的类型为nullptr_t,它是可隐式转换的,可与任何指针类型或指向成员类型的类型相媲美.除了bool之外,它不可隐式转换或与整数类型相比.

它是一个关键字和一个类型的实例?

另外,你有另一个例子(在维基百科旁边)哪里nullptr优于好老0

c++ pointers nullptr c++11

546
推荐指数
8
解决办法
31万
查看次数

模拟器还是模拟器?有什么不同?

虽然我理解模拟和仿真的含义一般,但我几乎总是对它们感到困惑.假设我创建了一个模仿现有硬件/软件的软件,我该怎么称呼它?模拟器还是模拟器?

任何人都能解释编程方面的差异吗?

额外奖励:这两个术语的英语差异是什么?(对不起,我不是母语人士:))

simulation terminology emulation

506
推荐指数
11
解决办法
33万
查看次数

检查数字是否为素数的最佳算法是什么?

只是我正在寻找的一个例子:我可以用一点代表每个奇数,例如对于给定的数字范围(1,10),从3开始:

__PRE__

以下字典可以挤得更对吗?我可以通过一些工作来消除五的倍数,但是以1,3,7或9结尾的数字必须在位数组中存在.希望这能澄清我想要的东西.

我正在寻找最好的算法,检查数字是否是素数,即布尔函数:

__PRE__

我想知道实现此功能的最佳算法.当然,我可以查询一个数据结构.我定义了最好的算法,它是生成数据结构的算法,该数据结构具有最低的内存消耗范围(1,N),其中N是常量.

algorithm math primes data-structures

148
推荐指数
8
解决办法
27万
查看次数

为什么有人会使用set而不是unordered_set?

C++ 0x正在引入unordered_set,可以在boost许多其他地方使用.我理解的是unordered_set具有O(1)查找复杂性的哈希表.另一方面,set只是具有log(n)查找复杂性的树.为什么人们会使用set而不是unordered_set?即是否需要set了?

c++ algorithm data-structures c++11

134
推荐指数
10
解决办法
6万
查看次数

为什么Lua数组(表)从1开始而不是0?

我不明白Lua这一部分的决定背后的理由.为什么索引从1开始?我读过(和其他人一样)这篇伟大的论文.在我看来,语言的一个奇怪的角落是非常愉快的学习和编程.不要误会我的意思,Lua很棒,但必须在某处做出解释.我发现的大部分内容(在网上)只是说索引从1开始.完全停止.

阅读其设计师对该主题的看法将是非常有趣的.

请注意,我在Lua中"非常"初学者,我希望我不会错过关于表格的明显内容.

arrays lua lua-table

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

static_assert做了什么,你会用它做什么?

你能举个例子static_assert(...)来优雅地解决问题吗?

我熟悉运行时assert(...).我什么时候应该static_assert(...)比常规更喜欢assert(...)

此外,boost有一个叫做的东西BOOST_STATIC_ASSERT,它是一样的static_assert(...)吗?

c++ debugging assert static-assert c++11

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

想要了解动态编程的人的简单示例

我正在为想要学习动态编程的人寻找一个易于理解的例子.关于什么是动态编程,这里有很好的答案.斐波那契序列是一个很好的例子,但它太小而不能划伤表面.它看起来是一个很好的主题,虽然我尚未参加算法课程,但希望它在我的春季名单上.

algorithm dynamic-programming

94
推荐指数
5
解决办法
9万
查看次数

Android NDK C++ JNI(没有找到本机的实现...)

我正在尝试使用带有C++的NDK,并且似乎无法使方法命名约定正确.我的原生方法如下:

extern "C" {
JNIEXPORT void JNICALL Java_com_test_jnitest_SurfaceRenderer_drawFromJni
(JNIEnv* env, jclass c)
{
   //
}
}
Run Code Online (Sandbox Code Playgroud)

标题包含在extern"C"{} aslo中.

一切编译都很好,创建一个.so文件并复制到我的项目下的libs文件夹,但是当我在Eclipse中调试并运行时,我不断收到"没有找到本机的实现......"的日志cat消息.因为所有NDK示例都在C中,我有什么遗漏吗?

谢谢.

android android-ndk

84
推荐指数
6
解决办法
9万
查看次数

我应该使用double还是float?

在C++中使用一个而不是另一个有什么优缺点?

c++ floating-point types double-precision

80
推荐指数
5
解决办法
8万
查看次数

绑定兰斯达?

我有一个关于哪种样式是首选的问题:std :: bind Vs lambda在C++ 0x中.我知道它们服务于某些不同的目的,但我们举一个交叉功能的例子.

使用lambda:

uniform_int<> distribution(1, 6);
mt19937 engine;
// lambda style
auto dice = [&]() { return distribution(engine); };
Run Code Online (Sandbox Code Playgroud)

使用bind:

uniform_int<> distribution(1, 6);
mt19937 engine;
// bind style
auto dice = bind(distribution, engine);
Run Code Online (Sandbox Code Playgroud)

我们应该选择哪一个?为什么?假设与上述示例相比情况更复杂.即一个优于另一个的优点/缺点是什么?

c++ lambda functional-programming bind c++11

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