8得票4回答
使用ostringstream四舍五入浮点数

我有一个问题,涉及使用ostringstream将float转换为C++字符串。这是我的代码: void doSomething(float t) { ostringstream stream; stream << t; cout << st...

15得票8回答
在C++和Java中,空类的大小是多少?

在C++和Java中,空类的大小是多少?为什么不是零?在C++的情况下,sizeof();返回 1。

44得票3回答
为什么printf和std::cout的输出不同?

我尝试了以下C++代码。然而,printf和std::cout的输出结果不同。为什么?struct Foo { int a; int b; int c; }; int main() { printf("%d\n", &Foo::c); // The ...

12得票3回答
如何在C++中编写一个函数,能够返回静态或自动存储对象而不需要拷贝?

假设我想编写一个函数,满足以下条件: 返回一个对象 根据函数的参数决定,该对象在某些情况下具有固定值,该值只能计算一次以节省时间。 因此,自然的选择是使该对象为static. 否则,函数必须即时生成对象 最佳编写此函数的方法是什么,要求如下: 调用时不需要复制构造函数,只需移动函数...

68得票6回答
当堆栈和堆发生冲突时会发生什么?

我很好奇当堆栈与堆发生冲突时会发生什么。如果有人遇到过这种情况,请解释一下情况。

168得票8回答
C++,将set复制到vector

我需要将std::set复制到std::vector中:std::set <double> input; input.insert(5); input.insert(6); std::vector <double> output; std::copy(input.be...

17得票5回答
Visual Studio 2012 RC中的Windows窗体CLR应用程序?

快速问题,我只是在尝试VS2012并尝试创建一个C++.NET应用程序,但是无论如何我都找不到新项目时的选项。 在vs2008中,它曾经在新项目>可视化c++> CLR>窗体应用程序下。 他们是否已从VS2012中删除了创建C++/CLR应用程序的选项?还是我必须下载什么?

18得票1回答
使用reinterpret_cast将函数转换为void*,为什么不是非法的?

这是对我先前问题 匹配bool与const void*重载函数的地址 的一个相关补充。回答者解释道: [C++11]标准没有定义从“指向函数的指针”到“指向void的指针”的任何标准转换。很难为缺少某物提供引用,但我能做到的最接近的是C++11 4.10/2 [conv.ptr]: “对象类...

10得票3回答
`Base *b = new Base;` 和 `Base *b = new Base();` 在没有定义自己的构造函数时有什么区别?

如果我没有定义自己的构造函数,那么使用 Base *b = new Base; 和 Base *b = new Base(); 有什么区别吗?

7得票6回答
可变参数模板和新特性

我有这个类模板: template<class... T> class Test { std::vector<TestCase*> test_cases; public: Test() { // Here, for each T an instance...