Tag: visual c ++

适用于大图的数据结构

我有一个大图,除了邻接列表和c ++ stl中的“邻接矩阵”之外还有其他任何数据结构,或者我可以用于这样一个大图的其他数据结构,实际上我的图的邻接矩阵不适合主要记忆。 我的图是有针对性的,我正在用C ++实现dijkstra算法。 我已经看过以前的post……但我正在寻找一个适合dijkstra的数据结构。 我的意思是一个包含超过1亿个节点和边的图。

链接错误:已经在*****中定义了xxx.LIB ::究竟出了什么问题?

问题: 我正在尝试使用名为DCMTK的库,该库使用了一些其他外部库(zlib,libtiff,libpng,libxml2,libiconv)。 我从同一个网站下载了这些外部库(* .LIB和* .h文件)。 现在,当我编译DCMTK库时,我收到链接错误(793错误),如下所示: Error 2 error LNK2005: __encode_pointer already defined in MSVCRTD.lib(MSVCR90D.dll) LIBCMTD.lib dcmmkdir Error 3 error LNK2005: __decode_pointer already defined in MSVCRTD.lib(MSVCR90D.dll) LIBCMTD.lib dcmmkdir Error 4 error LNK2005: __CrtSetCheckCount already defined in MSVCRTD.lib(MSVCR90D.dll) LIBCMTD.lib dcmmkdir Error 5 error LNK2005: __invoke_watson already defined in MSVCRTD.lib(MSVCR90D.dll) LIBCMTD.lib dcmmkdir Error 6 error LNK2005: __errno […]

获取磁盘样本代码的旋转速度

我不是很擅长VC ++但是有没有人有一个示例代码来获得计算机中磁盘的旋转速度。 我一直致力于检测SSD驱动器,一天研究的一个解决方案就是获得转速,而且由于SSD的转速为0 rpm,这可能是检测SSD驱动器的唯一方法。

为什么必须在运算符重载中提供关键字const

只是好奇为什么一个param必须是一个const操作重载 CVector& CVector::operator= (const CVector& param) { x=param.x; y=param.y; return *this; } 难道你不能轻易做到这样的事吗? CVector& CVector::operator= (CVector& param) //no const { x=param.x; y=param.y; return *this; } 当某些东西变成const时,它对于应用程序生命的其余部分是不可改变的? 这在操作重载方面有何不同?

错误C2059:语法错误’常数’

我在头文件中有以下代码: enum {false,true}; 我在main.c中有我的主要function。 如果我将扩展名更改为main.cpp,我会收到以下错误: Error C2059: syntax error ‘constant’ 我使用visual c ++,任何想法为什么`?

强制CMake使用Visual Studio将C ++编译器用于C文件

我已生成.h和.c文件,必须使用Visual Studio编译为C ++文件。 我听说我可以做类似set_source_files_properties( ${SOURCES} PROPERTIES LANGUAGE “CXX” )事情。 与此同时,我已经读到我不应该这样做,因为它只应该在异国情调中使用。 那么,强制CMake生成将C文件编译为C ++文件的VS项目的最佳方法是什么? PS:重命名生成的文件不是一个选项。

相当于MSVC的open_memstream

我在我的库中使用open_memstream ,但我想将此库移植到MSVC。 似乎没有可用的等效function,但有足够类似的function吗? open_memstream所做的是它需要一个char **目的地和大小并返回你很多写入的FILE *,数据存储在一个动态分配的缓冲区中(可以从char **参数访问)。 关闭FILE时,char **包含写入流的数据。 这使得构建大型复杂字符串流变得简单。 虽然可以从memstream读取和搜索,但我只能写入它。 有没有办法在MSVC中打开类似的内存FILE流? 此外,这是纯C,没有C ++。

错误LNK2005:_main已在hold.obj中定义

嗨请我浏览了所有相同的错误,但我没有解决我的问题,所以I am using MS VC++ 2010 ,我有两个文件ac and bc,每个都没有单独的错误,每个都有一个简单的代码和明确。 但是,当我使用它们收集显示此错误**error LNK2005: _main already defined in ac **同样的错误显示在代码块IED上。 我认为两次使用main函数。 现在我如何为这两个文件使用一个主函数 代码文件ac #include #include main() { int a =9; if(a==7) { puts(“This is number seven “); } else { puts(“This isn’t number seven “); } getch(); } 代码文件bc #include #include main() { int x=10; printf(“%d”, x); getch(); […]

函数返回值的生命周期是多少?

我读到了函数调用之间的return值, 并尝试使用以下代码段: /* file structaddr.c */ #include #define MSIZE 10 struct simple { char c_str[MSIZE]; }; struct simple xprint(void) { struct simple ret = { “Morning !” }; return ret; } int main(void) { printf(“Good %s\n”, xprint().c_str); return 0; } 编译代码时没有错误和警告。 使用GCC 4.4.3(Ubuntu 4.4.3-4ubuntu5.1)和Visual C ++编译器进行测试。 gcc -m32 -std=c99 -Wall -o test structaddr.c cl -W3 […]

链接…链接:致命错误LNK1181:无法打开输入文件’libgsl.a’

我正在使用Rob Hess的 SIFT算法代码,该代码在Windows中使用OpenCV库。 我正在将visual studio 2008作为IDE。 当我运行用于图像匹配的程序,其中Debug作为VS中的解决方案配置没有问题,一切正常。 但是,当我将解决方案配置更改为发布时,它会产生链接错误。 错误是: 链接…链接:致命错误LNK1181:无法打开输入文件’libgsl.a’ 有人可以解释我的原因,并告诉我如何解决这个问题。 谢谢