![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
C++学习技术
简单的c++学习技术
你好,Albert
计算机视觉工程师
图形图像,AIGC
opengl,opencv
C/C++,oc,c#,python
目前在研究stable diffusion AI
展开
-
解决:xcode:Member reference base type ‘rapidjson::Document‘ (aka ‘int‘) is not a structure or union
首先尝试了,把rapidjson当作源码接进项目,放在demo的project,可以跑,但是放在demo链条包的sdk源码project中,就报错:xcode:Member reference base type ‘rapidjson::Document’ (aka ‘int’) is not a structure or union。最后突发奇想,单独编译一下sdk源码project,然后再编译demo,居然行了。尝试了把rapidjson作为三方库接进来,还是不行。原创 2023-04-03 10:54:30 · 685 阅读 · 0 评论 -
解决:Member reference base type ‘XXX‘ is not a structure or union
在编译 C++ 代码时,如果出现“Member reference base type ‘XXX’ is not a structure or union”的错误,可能是因为使用了 C++11 的新特性,而当前编译器的标准并不支持这些新特性,导致编译出错。在“Build Settings”选项卡中,找到“Apple LLVM - Language - C++”选项,将“C++ Language Dialect”设置为“C++11”。打开 Xcode 项目,选择项目的“Build Settings”选项卡。原创 2023-04-01 21:56:46 · 7763 阅读 · 0 评论 -
Encountered 7 file(s) that should have been pointers, but weren‘t
git遇到的问题原创 2022-07-26 15:38:19 · 2766 阅读 · 0 评论 -
新版jsoncpp找不到JSONCPP_STRING
旧版本添加#include "json/json.h"即可使用:JSONCPP_STRING err;但是新版本需要多添加一个头文件:#include “json-forwards.h”原创 2021-06-23 20:41:45 · 528 阅读 · 0 评论 -
float浮点数四舍五入的方法,大部分人都想错了
看了大佬的文章https://rationmcu.com/clang/2416.html引申了一下保留一位小数的方法。浮点数四舍五入取一位小数://四舍五入取一位小数float CImplicitSurface::Get1fromfloat(const float& val){ float temp1 = val; int t1 = (uint32_t)(temp1 * 100) % 10; if (t1 > 4) { temp1 = (float)((uint32_t)原创 2021-03-23 21:00:38 · 4330 阅读 · 0 评论 -
C++bug:无法解析的外部符号 _vsprintf
【问题】严重性 代码 说明 项目 文件 行 禁止显示状态错误 LNK2001 无法解析的外部符号 _vsprintf FeatureReuse D:\RelatedTopics\openglEngine\glaux.lib(tk.obj) 1 【解决办法】我把vs2013升级到VS2019遇到的问题。解决办法如下:项目-属性-链接器-输入-附加依赖项:legacy_stdio_definitions.lib...原创 2021-03-20 20:07:35 · 1756 阅读 · 3 评论 -
MFC中读取文件方法,遇到空白行解决方案
文件格式:代码:void CVoronoiModel::ReadSitesTxtFile(){ CString filter = "(*.txt)|*txt|所有文件(*.*)|*.*||"; CFileDialog dlg(TRUE, NULL, NULL, OFN_HIDEREADONLY | OFN_OVERWRITEPROMPT, filter, NULL); if (dlg.DoModal() == IDOK) { CString filepath = dlg.GetPathNa原创 2021-01-10 13:43:21 · 489 阅读 · 0 评论 -
多线程使用--vector是线程安全的,方法同步,使用多线程时效率不高。
看下面的代码#include <iostream>#include<vector>using std::vector;using std::cout;using std::endl;void isNumEqual5(vector<int>& num){#pragma omp parallel for for (int i = 0; i < num.size(); i++) { cout << i&l原创 2021-01-09 23:27:54 · 8568 阅读 · 2 评论 -
多线程使用--线程安全与不安全
【1】线程安全与不安全的原因与解决方法一、线程安全指多个线程在执行同一段代码的时候采用加锁机制,使每次的执行结果和单线程执行的结果都是一样的,而且其他的变量的值也和预期的是一样的,不存在执行程序时出现意外结果。(保证数据的一致性)二、线程不安全就是不提供数据访问保护,有可能出现多个线程先后更改数据造成所得到的数据是脏数据。三、引起线程安全问题的原因:线程安全问题都是由全局变量及静态变量引起的。若每个线程中对全局变量、静态变量只有读操作,而无写操作,一般来说,这个全局变量是线程安全的;若有多个线原创 2021-01-09 22:59:49 · 297 阅读 · 0 评论 -
计算程序运行时间
方法1timestamp类方法2MFC中使用long t1 = GetTickCount(); //程序段 long t2 = GetTickCount() - t1; cout << "运行时间:" << t2 << endl;原创 2021-01-09 11:52:35 · 173 阅读 · 0 评论 -
多线程使用1--#pragma omp parallel for
#pragma omp parallel for是OpenMP中的一个指令,表示接下来的for循环将被多线程执行,另外每次循环之间不能有关系。示例如下:int main(int argc, char* argv[]){#pragma omp parallel for //后面是for循环 for (int i = 0; i < 10; i++ ) { printf("i = %d/n", i); } return 0;.原创 2021-01-09 10:25:45 · 17227 阅读 · 0 评论 -
libigl库的学习笔记--问题与解决办法
问题严重性 代码 说明 项目 文件 行 禁止显示状态错误 C2440 “=”: 无法从“const char [5]”转换为“LPCWSTR” libiglProject D:\LIBIGL\learning\HelloWorld\include\igl\file_dialog_open.cpp 68 错误 C2440 “=”: 无法从“char [260]”转换为“LPWSTR” libiglProject D:\LIBIGL\learning\HelloWorld\include\igl\file原创 2020-11-21 00:36:54 · 576 阅读 · 0 评论 -
vs2013+MFC项目升级到vs2019+MFC后
该记录仅仅适用于我自己的项目,其他的可以借鉴一下。原创 2020-09-13 19:33:52 · 1865 阅读 · 0 评论 -
C++字符串遇到的输入,循环输入,一行两个字符串连续输入n行
单独一行的输入#include <iostream>#include <string>using namespace std; int main(){ //对于char* / char[] char s[1001]; cout<<"Please input char[]:"<<endl; cin.getline(s, 1000);//iostream下的函数, 第二个参数表示允许的最大输入长度 cout<<"Output:"&原创 2020-08-23 18:22:49 · 4285 阅读 · 1 评论 -
memset在求最短路径中的使用
memset用法int a[20];menset(a,0,sizeof(a)),第一个参数a表示数组a[20]的数组名,也是该数组的首地址;第二个参数0表示接下来要给数组所赋的值;第三个参数表示从首地址开始需要赋值为0的长度,sizeof(a)表示整个数组的长度为20 ✖ sizeof(int)=80;也就是前80个字节变成了0。最短路径中的无穷大问题我i们知道如果u,v之间没有边,w[u][v]=无穷大;所以首先我要将数组中的值初始化为无穷大。如果是使用ox7fffffff,那么下面的情原创 2020-08-11 19:56:54 · 105 阅读 · 0 评论 -
c++控制台写一个计时器
示意图新建类TimerTimer.h```cpp```cpp#pragma once#include <stdio.h>#include <tchar.h>#include <time.h>#include <iostream>#include <iomanip>#include <windows.h> class Timer{public: Timer(); ~Timer();private:原创 2020-07-07 22:26:19 · 582 阅读 · 0 评论 -
怎么安装vs2013配套的VASSISTX番茄助手
虽然网上的教程都烂大街了,但是我发现身边的人仍然遇到各种问题,所以我整理了自己的安装过程。第一步,下载安装包找到安装包,比如在搜索资源那里搜索“vs2013配套的VASSISTX番茄助手”下载好,双击这个文件第二步,清除干扰文件如果你安装过其他的番茄助手,可以用everything查找visualassist文件,然后删除。第三步,安装安装时,选择2013第四步,破解找到Extensions下的你可以看到名字比较随机的文件夹,例如我的电脑中叫xn1xs1ix.rxy,无论它的名字是什么,原创 2020-06-10 16:19:06 · 717 阅读 · 0 评论 -
Voro + +学习笔记 single_cell
Voro + +例子目录= = = = = = = = = = = = = = = = = = = = = = = =这些目录包含使用voro++代码的示例程序,它们被分成六个部分:basic -它包含几个简单的脚本,这些脚本介绍了这个基本类并执行简单的操作,例如构造一个单元格,或者在一个盒子中对少量随机粒子进行Voronoi镶嵌。wall -这些程序演示了如何使用wall对象,在非标准几...原创 2019-10-08 17:26:05 · 4628 阅读 · 0 评论 -
语法错误 : 缺少“;”,意外标记;不是**的成员;不是类模板的专用化;无法识别的外部错误
我检查了很多遍,代码没问题,显示错误如下像漏掉{ },;等低级错误,不太可能,所以我尝试修改头文件的位置就解决了原创 2019-10-01 11:14:55 · 663 阅读 · 0 评论 -
无法解析的外部符号问题解决办法
这个问题是在用运算符重载时遇到的错误 1 error LNK2019: 无法解析的外部符号“public: __thiscall CA::CA(void)” (??0CA@@QAE@XZ),该符号在函数 "public: class CA __thiscall CA::operator+(class CA const &)const " (??HCA@@QBE?AV0@ABV0@@Z...原创 2019-07-29 00:18:07 · 4892 阅读 · 2 评论 -
opencv图像处理中遇到的问题
1.错误 1 error LNK2001: 无法解析的外部符号 "public: virtual struct CRuntimeClass * __thiscall PictureDialog::GetRuntimeClass(void)const " (?GetRuntimeClass@PictureDialog@@UBEPAUCRuntimeClass@@XZ) F:\BianCheng\Ma...原创 2019-06-16 22:04:48 · 364 阅读 · 0 评论 -
机器视觉作业:vs2013+MFC+opencv2.4.10实现图像处理功能
1.新建MFC单文档工程。在Resource View的“Dialog”节点上右键,然后在右键菜单中选择“Insert Dialog”创建一个新的对话框模板,ID就使用默认的IDD_DIALOG1。2.在中间区域会显示新建的对话框模板,然后选中此对话框模板,点右键,在右键菜单中选择Add Class。3.选择“Add Class”后会弹出一个对话框,在对话框中“Class name”下的编辑...原创 2019-06-25 19:50:27 · 1119 阅读 · 0 评论 -
基于C++(MFC)的二维Delaunay三角剖分与Voronoi图的算法及代码
本篇文章基于课程作业《计算机辅助设计》之《二维Voronoi图》,相关代码的下载请参看下载链接,尊重知识,尊重劳动。原创 2019-06-07 20:33:01 · 3973 阅读 · 7 评论 -
区别:在共享DLL中使用MFC 和 在静态库中使用MFC
在共享DLL中使用MFC链接成EXE的时候,没有将MFC的一些DLL包含进来,所以EXE文件较小,但是运行时候要求系统中要有相关的DLL文件。发给别人机器的时候,可能会出现找不到***库或者无法启动程序等类似错误。打包发布软件时候需要将用到的dll都打包进来。至于查看使用到哪些DLL了,可以用Spy来侦测。在静态库中使用MFC链接成EXE的时候,将所用到的MFC中的函数相关代码已经包含...原创 2019-05-18 15:25:24 · 981 阅读 · 1 评论 -
CUDA遇到的问题及其解决办法
1.问题所有配置都完成的前提下,发现仍然有某个文件里面的变量找不到。解决办法单独对.cu文件编译比如FoamGeneration.cu文件里面的变量找不到,就对FoamGeneration.cu单独编译。问题就解决了。...原创 2019-09-02 10:06:11 · 1116 阅读 · 0 评论 -
vs2013+cuda8.0+win10配置问题解决办法
背景在vs2013+cuda8.0+win10配置 的过程中总是出现问题,其他配置可以参考下面博客,本文仅仅就遇到的问题展开讨论。https://blog.csdn.net/u011314529/article/details/51505029解决方案按照以上方法配置后,显示找不到cublas.lib,主要是cublas的配置方法有问题。在工程-属性-配置属性-VC++目录-库目录 里面...原创 2019-09-01 10:34:52 · 214 阅读 · 0 评论 -
ParaView的简单用法
最近在研究oofem的库,他的输出文件需要paraview或者VTK可视化出来。因此我研究了一下paraview的基本用法,分享出来。软件版本and安装从paraView官网https://www.paraview.org/download/上下载需要的版本,由于本人仅仅是需要很小的功能,所以以免安装版本为例子ParaView-5.5.0-Qt5-Windows-64bit.zip”。然...原创 2019-07-18 22:47:32 · 22070 阅读 · 1 评论 -
成功在window10+VS2013环境下编译OOFEM
这个方法我已经编译成功,不过还没有学会调用。原创 2019-06-14 16:36:37 · 1237 阅读 · 9 评论 -
MFC的Ribbon界面按钮是灰色的问题解决办法
问题描述明明已经设置了按钮,按钮ID,编辑了按钮的类CRibbonIntegration,响应函数,但是按钮却显示灰色。解决步骤首先打开MainFrm.h文件,把自己的按钮类的头文件包含进来,然后实例化对象m_RibbonIntegration(如图)。然后在MainFrm.cpp里面,找到OnCmdMsg函数,添加下面两行代码:if (m_RibbonIntegratio...原创 2019-06-12 20:24:34 · 1896 阅读 · 0 评论 -
VS2013,MFC,在视图类里添加鼠标左键响应函数OnLButtonDown
以CVoronoi2D为例子。点击类视图的View,右击选择类向导选择WM_LBUTTONDOWN,鼠标左击响应函数,然后点击添加处理程序。代码会自动生成一个响应函数,如图。如果对您有帮助,可以评论一下,谢谢!...原创 2019-05-29 21:46:03 · 6869 阅读 · 5 评论