小编use*_*137的帖子

迁移到c ++ 11

我正在研究一种主要使用C++作为其核心组件的产品.虽然它使用Visual C++作为Windows平台的主要编译器及其编辑器和调试器作为主要开发环境,但未使用任何Microsoft特定技术.对于其他平台,它使用gcc进行编译.

我的代码库大量使用模拟的右值引用(使用Boost移动库),可变参数模板(使用Boost处理器),在某些情况下使用表达式模板.

我很想转换到C++ 11来获得更清晰的代码库,使用rvalue引用,完美转发,默认和删除构造函数,可变参数模板以及auto和decltype.

如果我这样做,我可能会对现有代码进行一些修改以简化它(使用模板别名和constexpr).在这种情况下,我必须使用mingw切换到Windows平台的gcc,因为Visual Studio没有默认和删除的实现,以及可变参数模板.另外,我必须切换到gdb作为调试器和不同的代码编辑器.

对我来说,代码简单性和性能方面的好处看起来很大,但稳定性,可用性(在某些平台上如Android),调试(从Visual Studio迁移到gdb,因为我们有许多为Visual Studio调试器开发的可视化工具)和代码编辑器(对于大量的模板代码而言,我没有太多使用自动完成,重构等,而Codelite,Codeblocks,QtCreator与我们的构建系统配合良好)是一些问题.

我想知道是否有任何中型/大型项目(商业或开源)使用/打算使用上述任何C++ 11功能?这种迁移需要多少努力?

任何实践经验,技巧或智慧的话语都会帮助我做出决定.

c++ c++11

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

#include <opencv2/opencv.hpp> 在 VS 2013 中不起作用

我有 VS2013 社区版,我刚刚在目录 c:\openCV3 中安装了 OpenCV,并且有一个 build 子文件夹,其中包含该子文件夹等,一切看起来都很正常。所以我用该行创建了一个空项目,#include <opencv2/opencv.hpp>但我得到了

错误 1 ​​错误 C1083:无法打开包含文件:'opencv2/opencv.hpp':没有这样的文件或目录 d:\devt\cplusplus\opencv\test1\test1\source.cpp 1 1 Test1

不过,我已将项目的附加包含目录修改为:

C:\OpenCV3\build\include\opencv;C:\OpenCV3\build\include\opencv2;C:\OpenCV3\build\include;%(AdditionalIncludeDirectories)
Run Code Online (Sandbox Code Playgroud)

但什么都不做,错误并不会消失。以前已经问过几乎相同的问题,但答案对我不起作用。

更新:我右键单击<opencv2/opencv.hpp>,在弹出菜单中选择 OpenDocument。我收到以下消息框: 文件未找到

我发现令人惊讶的是,没有提到我的一组附加包含目录。

c++ opencv

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

从午夜到日期时间的秒数

我将雷达数据称为"轨道",轨道数据显示自上一个午夜以来的UTC秒数.这不是自1970年1月1日以来的秒数.

现在我想将它转换为日期时间,因为知道计算机上的时钟可能与雷达上的时钟略微不同步.我假设雷达的秒数是参考,而不是计算机的.我想将这些秒转换为完整的日期时间.午夜时分,事情似乎有点棘手.

有什么建议?我有一些想法,但我不想错过任何东西.

我正在使用C++ Qt.

c++ qt datetime utc

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

如何在.NET控制台应用程序中加载位图文件

我正在尝试使用C#创建一个控制台应用程序,它首先加载一个8位灰度级位图文件(通常是BMP)并将其转换为二维字节数组,其中(如您所料)位置x处的字节, y是像素x,y的强度.然后我有很多代码可以在位图上做一些工作作为数组.

麻烦的是我已经看到这样做来自WPF模块的调用,这些调用在控制台应用程序中是不可用的.我不想用System.Windows.Media.Imaging例如.

有没有人有任何关于如何在没有太多麻烦的情况下做到这一点的建议?

c# wpf bitmap bmp

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

CUDA:查找稀疏数组的 N 个最大值

我有一个包含几百万个值的数组,存储在 GPU 的全局内存中。除了几千之外,大多数都是零。这些值是设备上计算的结果。

我想1024尽快找到最大值及其索引。

有没有人有什么建议?

arrays cuda

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

为什么在C#TcpClient中使用"default"clientSocket = default(TcpClient);

我找到了一些关于如何在C#中编写TCP/IP客户端 - 服务器应用程序的代码服务器Main从这开始:

TcpListener serverSocket = new TcpListener(8888);
int requestCount = 0;
TcpClient clientSocket = default(TcpClient);
serverSocket.Start();
Console.WriteLine(" >> Server Started");
clientSocket = serverSocket.AcceptTcpClient();
Run Code Online (Sandbox Code Playgroud)

不幸的是,我不知道关键字默认在第三行中做了什么.我原以为最后一行初始化了clientSocket,因此之前不需要初始化它.

c# sockets default

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

标签 统计

c++ ×3

c# ×2

arrays ×1

bitmap ×1

bmp ×1

c++11 ×1

cuda ×1

datetime ×1

default ×1

opencv ×1

qt ×1

sockets ×1

utc ×1

wpf ×1