![](https://img-blog.csdnimg.cn/20201014180756925.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
C++常见问题
luckyone906
这个作者很懒,什么都没留下…
展开
-
C++ 与Qt之间的关系概念
Qt 提供了 C++ 库:Qt 提供了许多 C++ 库,如 Qt Core、Qt GUI、Qt Widgets、Qt QML 等,这些库可以帮助开发者更快速地创建 GUI 和应用程序。Qt 是一个用于开发 GUI 和应用程序的跨平台 C++ 库,它提供了许多功能和工具,可以帮助开发者创建高质量的桌面应用程序和移动应用程序。这意味着你可以使用 C++ 的语法和特性来编写 Qt 应用程序。Qt 是用 C++ 编写的:Qt 的核心部分是用 C++ 编写的,因此,如果你熟悉 C++,那么学习 Qt 会更容易。原创 2024-04-06 11:11:21 · 456 阅读 · 0 评论 -
C/C++报错:全局变量重定义或是多次定义
很多人可能直接把全局变量写进.h文件,然后用多个文件包含这个头文件,编译时就会报错:变量重定义…头文件的作用就是要给外部提供接口使用的,所以请记住, 只在.h中做声明,在.cpp文件中进行定义,而不要在.h 文件中定义,真理总是这么简单。那其他文件如何使用这些全局变量呢?全局变量要在.h 文件中声明,在.cpp文件中定义。定义好了之后,可以在.h文件中利用extern关键字进行声明。...转载 2019-07-13 22:08:21 · 3933 阅读 · 1 评论 -
C++常用类型转换
char是C语言标准数据类型,字符型,至于由几个字节组成通常由编译器决定,一般一个字节。Windows为了消除各编译器的差别,重新定义了一些数据类型。CHAR为单字节字符。还有个WCHAR为Unicode字符,即不论中英文,每个字有两个字节组成。如果当前编译方式为ANSI(默认)方式,TCHAR等价于CHAR,如果为Unicode方式,TCHAR等价于WCHAR。LPCSTR 相当于CONST ...转载 2019-07-05 15:10:05 · 374 阅读 · 0 评论 -
C++在dll中获取自身路径(非exe调用路径)
#include "stdafx.h"#include <fstream>#include <iostream>#include <windows.h>using namespace std;HMODULE GetSelfModuleHandle(){ MEMORY_BASIC_INFORMATION mbi; return ((::...转载 2019-07-05 15:11:41 · 1044 阅读 · 0 评论 -
C++ 包含目录、库目录、附加依赖项总结
在使用opencv库,以及其他库的时候,经常会需要添加包含目录、库目录、附加依赖项等。现做一个总结吧。1、包含目录是.h的头文件所在的目录,如果没有正确包含目录,代码中会出现红色的警告,各种未定义的标识符。添加库目录的绝对路径自然不必多说。讲下添加相对路径的一个小技巧:..\..\include 每一次 ..\ 都会向上移动一个目录,暂且认为最原始的目录为(.vcpro...转载 2019-07-17 23:45:14 · 2102 阅读 · 0 评论 -
c++设置不适用预编译头
编译器提示在末尾是否忘了添加stdafx.h,可右键相应的.cpp文件,设置c++设置不适用预编译头原创 2019-07-21 07:29:40 · 1746 阅读 · 0 评论 -
一个简单的内存分配例子
来看一个网上很流行的经典例子:main.cppint a = 0; 全局初始化区char *p1; 全局未初始化区main(){int b; 栈char s[] = "abc"; 栈char *p2; 栈char *p3 = "123456"; 123456\0在常量区,p3在栈上。static int c =0; 全局(静态)初始化区p1 = (char *)malloc(...转载 2019-07-21 09:42:17 · 142 阅读 · 0 评论 -
C++中vector作为参数的三种传参方式
此文章转载自:http://www.cnblogs.com/xiaoxi666/p/6843211.htmlc++中常用的vector容器作为参数时,有三种传参方式,分别如下(为说明问题,用二维vector):function1(std::vector<std::vector<int>>vec),传值 function2(std::vector<s...转载 2019-07-23 07:44:38 · 4186 阅读 · 0 评论 -
c++ 多线程:线程句柄可以提前关闭,但是线程并没有关闭
很多程序在创建线程都这样写的:ThreadHandle = CreateThread(NULL,0,.....);CloseHandel(ThreadHandle );1,线程和线程句柄(Handle)不是一个东西,线程是在cpu上运行的.....(说不清楚了),线程句柄是一个内核对象。我们可以通过句柄来操作线程,但是线程的生命周期和线程句柄的生命周期不一样的。线程的生命周期就是线程函数从...转载 2019-07-27 13:05:37 · 1210 阅读 · 0 评论