我的第一个C++类(和错误)

我试着从办公室里找到的一本书中选了一门幼稚的课 就是这样: #include <iostream.h> #include <math.h> const double ANG_RAD = 0.017; class Angulo { double valor; public: void act_valor( double ); double seno( void ); double coseno( void ); double tangente( v

C++ 是否可以在不按enter键的情况下更改用户键入的内容?这是一个C语言的控制台程序

这可能吗?这个想法是输入一个密码,并在运行时将其转换为星号——非常类似于HTML上的密码字段。我已经编写了这段代码,但它在用户按enter键后转换输入,而不是在用户键入时 #include <stdio.h> #include <string.h> #include <iostream> int main() { char password[11]; int i, j; printf("Enter the password : ");

C++ 为什么“使用名称空间std;”被认为是不好的做法?

其他人告诉我,使用名称空间std;in代码是错误的,我应该直接使用std::cout和std::cin 为什么使用名称空间std;被认为是坏习惯?它是低效的还是有可能声明与std命名空间中的函数同名的不明确变量?它会影响性能吗?另一个原因是意外 如果我看到cout另一个原因是惊讶 如果我看到cout这与性能没有任何关系。但是考虑一下:你使用的两个库叫做Foo和Bar: using namespace foo; using namespace bar; 一切都很好,你们可以从Foo和Bar毫无问

C++ initonceExecutionce异常安全

我在initonceExecutionce WinAPI函数上有一个异常安全问题。无论何时从回调函数引发异常,都会发生死锁。Callback返回布尔标志,告诉调用者数据是否已成功初始化,但如果返回false,则无法重新显示异常,这不好。我试着用这种方法解决这个问题 try { InitOnceExecuteOnce(&flag, init_once_handler, &arguments, 0); } catch (...) { InitOnceInitializ

C++ C++;循环推回错误的向量字符串

我觉得这很简单,但由于某种原因,我不明白发生了什么 当我运行代码的这一部分时,它将URL与数组中的字符串元素相结合,然后将其推送到字符串向量中,它成功地推送了第一个URL,但随后出现了某种内存泄漏?控制台无限循环胡言乱语 string anonlist[] = {"test1","test2","test3","test4","test5","test6","test7"}; for (int i=0; i<=7; i++) { vector<string> na

C++ c++;动态dll加载和加载程序中定义的函数

我有程序A(它是开源的,但我不能修改它的源代码),还有动态加载的DLL B 有没有办法使用DLL B在程序a中定义的函数 (可能会有帮助;程序A有很多.h头文件,我需要的所有函数都在这些文件中定义了extern。extern定义生成A.exe的链接器可以使用符号。要获取符号(函数、变量等)的地址,必须导出符号。这通常不适用于程序 如果程序A.exe未向您提供指针或获取函数指针的方法,则无法在DLL B中使用程序A.exe的函数 恶意攻击是可能的,尽管…外部程序定义生成A.exe的链接器可以使用该

C++ 向Protobuf注入外部依赖项?

我有一个protobuf的类层次结构,这些protobuf是序列化和反序列化的。现在,在运行时,我希望其中一个类包含我的类实例,该实例由我在C++中实现,包含了在运行时发现的一些装饰和缓存。 有没有办法只用普通的protobuf编译器来实现这一点 我想到的两个选项是为类的每个实例使用一个具有整数id的索引。由于性能受到影响,我希望避免出现这种情况。 另一个选项是使用外部脚本损坏生成的源文件。这相当难看,如果可能的话,我也希望避免这种情况。在运行时生成一个.proto来描述修饰过的消息,调用pro

C++ 四叉树更新对象失败

我在实现四叉树时遇到问题 当四叉树中的对象移动时,我们必须更新该对象在四叉树中的位置。 我试图自己编写一个更新函数,但它不起作用。*(void UpdatePosition(QuadNode root,bool&OK)) 我的四叉树类如下: class QuadNode { public: vector<Object*> listObj; RECT* _rect; QuadNode* LT,*RT,*

将JPEG编码的位图转换为Gdiplus::位图对象时出现问题 我使用C++做一些图像工作,我希望能够使用JPEG压缩文件。GDI+库似乎有我所需要的,特别是Gdiplus::Bitmap::GetPixel()例程是我最终想要使用的

有几个Gdiplus::Bitmap构造函数,我想使用的一个是BITMAPINFO结构和指向图像位的指针。我已经从一个钩子那里得到了这些信息,所以我甚至没有创建原始位图,它是给我的。但是位图上的压缩设置为JPEG,因此不容易解析,我不知道如何解析,或者想编写一个JPEG解压缩算法 以下是我试图利用GDI+库查看jpeg压缩图像中单个像素的代码: // lpbmi and lpBits come from a hooked StretchDIBits call. I did not generat

C++ 是否有可用的跨平台LDAP客户端库?

我想知道是否有任何可用的库可以隐藏依赖操作系统的LDAP客户端实现细节,比如JDBC的思想?该库还提供了基本的CRUD功能以及统一的SSL API,就像在Windows的wldap32中所做的那样 真的很感激 我想有一个跨平台的LDAP客户端,它有基本的CRUD功能和SSL启用选项。有什么建议吗?thanks@TadeuszA.Kad他写道他想要一个跨平台的库,有Mozilla LDAP SDK,它是跨平台的。

C++ C++;异常未被捕获

当我的链表为空时,我试图抛出一个EmptyListException,但是如果我取消对throw EmptyListException()的注释,程序将继续终止。 这是我的EmptyListException头 #ifndef EMPTYLISTEXCEPTION_H #define EMPTYLISTEXCEPTION_H #include <stdexcept> using std::out_of_range; class EmptyListException : public

C++ 我的菜单有两个缓冲区

我使用下面的代码在我的应用程序中实现了双缓冲。 在wards之后,我发现我的子窗口(即buttoms)没有像正常窗口那样设置动画,因此我将WS_EX_COMPOSITED添加到父窗口中,子窗口现在可以正确设置动画。但是,在添加WS_EX_COMPOSITED后,从我的资源创建的“我的菜单”为黑色,无法正确显示 那么,如何将双缓冲添加到我的顶部菜单 MainWinHwnd = CreateWindowEx(WS_EX_COMPOSITED, MainWinClassName, MainWinTit

C++ 取消引用从函数返回的共享\u ptr

我有一个类,DevicePointer,它封装了一个std::shared\u ptr。需要保存指向设备指针的各种类派生自DevicePointer。在我开始使用shared\u ptr之前,DevicePointer有一个::Expose()函数,该函数将返回指向设备的原始指针。现在我使用shared_ptr来保存设备指针,我不知道如何返回它。请注意,应该调用的唯一原因是取消对指针的引用 这就是原始曝光的样子: 并且会这样使用: 现在,MyDevice是一个std::shared\u ptr,

C++ 将mongod链接到存档文件时出现问题

我一直在尝试将mongod链接到归档文件,而不是使用共享库。目前,我在将mongod链接到共享库方面没有问题,所以文件和所有东西都可以正常工作。但是,对于外部构建的静态库和归档文件,情况有所不同 这是我基本上想要做的。我有两个.a文件,比如lib1.a和lib2.a,我正在使用make生成这些文件。我试图通过修改SCons构建脚本(位于mongo/src/db中)将这两个归档文件静态链接到mongod。我希望看到的是这样的情况: g++ -o build/linux2/normal/mongo/

C++ 两个动态数组之和

我正在做一个家庭作业,其中我有两个以两个动态字符数组的形式从用户那里获取输入,每个数组最多100个字符,并返回它们的总和 当两个数字长度不同或答案小于100位时,我正在努力找到一个正确的求和函数。当数字长度不同时,它们会像相同一样被添加,例如,100+1000变为1000+1000。当结果小于100位时,无论如何都会打印完整的数组,因此有几十个尾随零。编辑:已修复,请参见下文 我知道没有办法知道动态数组的实际大小,我也无法找出任何方法来放置某种哨兵值,阻止程序进一步处理。我不允许使用向量或传统数

在MIPS上调用两次子例程 我在C++中把这个程序翻译成MIPS汇编: 原始C++代码,以教授给出的例子为

C++代码由我审核,这样你就可以运行了 该程序的目的是读取两个浮点数组的输入元素,计算存储项的平均值,并找出第二个数组中有多少元素大于第一个数组 这是我的MIPS汇编代码: .data vect: .float .space 256 vect1: .float .space 256 vect2: .float .space 256 num1: .word .space 4 num2: .word .space 4 average: .float .space 4 numag: .word .sp

C++ 删除关键字时引发访问冲突异常

出于某种原因,在调用AddToBinarySearchTree后,会从~BinarySearchTreeNode析构函数引发异常。我认为这可能是因为节点本身在树被删除之前就被删除了,但我认为情况并非如此 为什么调用会删除m_left抛出以下异常 访问冲突读取位置0xfeeef2 int-tmain(int-argc,_-TCHAR*argv[] { void AddToBinarySearchTree(二进制搜索树bst,T值){ bst.Add(值); } void MyMethod(){ 二

以x毫秒为单位,独立处理 我正在用C++编写服务器,我希望它能在每X毫秒内完成一些事情。这是我以前从未需要过的东西,所以我在谷歌上搜索了一下,发现有两种选择

睡眠(x)和时钟(t) 这两个人中哪一个更合适?我用时钟试过,如果我注意到1000个时钟滴答声似乎是一秒钟。是一直这样还是我只是幸运 如果可能的话,我想了解更多这方面的信息。如果您希望它能够便携使用,请使用标准库。我们有chrono和thread。这完全取决于您的用例,但是sleep(x)会阻止您当前的线程,这是您希望在服务器主处理循环中避免的。您需要多精确?如果第一次间隔为10毫秒,第二次间隔为14毫秒,第三次间隔为33毫秒,然后返回到10毫秒,这可以吗?还是需要非常一致?大多数操作系统都不是

GATASYNCKESTATOR+C++的可能参数/组合

我一直在试图找出函数GetAsyncKeyState的参数列表 我检查了谷歌和其他许多搜索结果页面,但找不到明确的答案 比如说 char t = 58; (Would be number 4) char y = 8; (Would be BACKSPACE key) 我之所以知道这些,是因为我可以使用循环来查询每个可能参数的函数 for(i = 0; i <= 500; i++) { if(GetAsyncKeyState(i) == -32767) {

Alpha频道摄像头捕获OpenCV C++ 在C++端口上,用OpenCV:< /P>,用C++代码读取了罗技C200网络摄像头。 Mat result; IplImage* frame; int hell=0; int dunkel=0; CvCapture* capture; capture = 0; capture = cvCaptureFromCAM( CV_CAP_ANY ); cvSetCaptureProperty(capture, CV_CAP_PROP_FRAME_WIDTH, 320); cvSetCaptureProperty(capture, CV_CAP_PROP_FRAME_HEIGHT, 240); frame = cvQueryFrame( capture ); if( !frame ) break; result = frame; flip(result , result ,-1); cvReleaseCapture( &capture ); for(int i = 0; i < 240; ++i){ for(int j = 0; j < 320; ++j){ if((result.at<Vec3b>(i,j)[1] > 230) && (result.at<Vec3b>(i,j)[0] > 230)) { hell++;} else {dunkel++;} } }

如何获得alpha通道,在这种情况下,OpenCV中Mat矩阵中一个元素的[4]第四个元素 感谢您的帮助网络摄像头图像中没有alpha通道 也请使用OpenCV的C++ API,可尊敬的C一个是死胡同。< /P> < P>有可能从网络摄像头读取alpha通道吗? 与hsv颜色模型类似: 这是hueFarbton请不要把否决票看得太过个人化,但你的代码对noobs来说是一个坏例子,而且会永远持续下去

C++ 如何基于模板中的类型编译函数?

我希望能够做到以下几点: template <typename template_type> class awesome_class{ public: void some_function(void){ // if (template_type == type_a) cout << "I am of type_a and doing type_a specific methods"; // endif

C++ Qt设计器:嵌套小部件不是成员?

Im使用Qt Creator 3.2.1。 使用Qt设计器,我进行了基本的设计:通过添加一个普通的QWidget并将其升级到我的自定义窗口,我向我的主窗口添加了一个自定义小部件(CustomWidget widget)。 在这个自定义小部件中,我添加了一个QGraphicsView(QGraphicsView视图) Qt Designer的对象浏览器正确显示项目的层次结构:小部件内的视图和主窗口内的小部件 但是,该表单生成的ui_mainwindow.h提供了: // in ui_mainwin

如何调用C++中的函数 我从MATLAB调用了C++函数。 我不知道如何在C++ 2010 中运行

在matlab中,函数命令是 >> y = kalman01(z); 在C++中,我只知道这一个< /P> void kalman01(const double z[2], double y[2]) 那么我如何使用kalman01.cpp来传递输入以获得输出并显示输出y呢?您必须编写函数代码来对z数组执行操作以获得y数组。 函数的输入是一个数组z(声明为const,不能修改),以及一个数组y(包含在函数中执行的操作的结果)。 现在我写一个简单的例子: void kalman01(

C++ 如何选择函数模板专用化?

我们知道,在函数模板重载解析之后,编译器应该从所选的基函数模板中选择最佳匹配专门化? 规则是什么?这是两个不同的模板 你想做的是 #include <iostream> using namespace std; template<typename T> void fun(T t) { cout << "match T" << endl; } template<> void fun(int const& t) {

C++ 计算插入排序和合并排序(daa)的效率

假设CPU每秒可以处理10^8个操作。假设必须对包含10^6个元素的数组进行排序 插入排序和合并排序所用的时间是多少 想知道如何计算时间。给出的信息不足以准确回答问题 所花费的时间将取决于数据本身和算法的实现 当然,可以根据合理的假设作出估计 插入排序在^2上,因此需要按K1*10^12操作的顺序对数组进行排序,或K1*10^4秒。即使使用优化的实现,插入排序也可能需要几个小时 合并排序在*logn上,因此需要按照K2*10^6*6操作的顺序对数组进行排序,或者K2*6*10^-2秒。合并排序可

错误6句柄在Windows上写入文件无效 在Windows 2008 R2上,VisualC++ 6不.NET程序在试图写入文件时返回“错误代码:6,错误细节:句柄无效”。文件已创建,但由于出现错误而为空

运行该程序的Windows用户帐户是计算机上的管理员。根据用户的说法,错误“刚刚开始发生” 同样,文件已创建,并且似乎具有正确的权限和所有权。文件是用fopen打开的,并用fwrite写入 为什么会发生错误? 这与集团政策有关吗? 我从哪里开始寻找 [更新日期:2015-01-28] 返回错误的代码: m_stream = fopen(m_sLogFile, m_sMode); if ( m_stream == NULL ) { dwErrorCode = ::GetLastError

C++ 如何从C++;?

我尝试使用QQmlComponent组件(view.engine(),QUrl::fromLocalFile(“MyItem.qml”);然后QOObject*object=component.create();但它给我的Qml组件还没有准备好。进一步尝试将statusChanged信号连接到插槽函数,但它似乎没有加载新的qml组件 QQuickView view; view.setSource(QUrl(QStringLiteral("qrc:/main.qml"))); QQmlCompon

C++ c+中的函数重载+;不起作用

当我运行这个程序时,它会产生错误[error]重载的“add(double,double,double)”调用是不明确的 为什么呢?我的意思是函数参数有不同的数据类型,这实际上是函数重载,那么为什么会出错呢 但是,当浮动被double替换时,它工作正常 #include<iostream> using namespace std; void add(){ cout<<"I am parameterless and return nothing";

C++ 根据ID/注册搜索和编辑.txt fstream文件

我试图从.txt中搜索特定的ID/注册,并相应地显示相应的信息。在这种情况下,我希望根据应输入的相应注册号显示定价 读和写文件不是我的问题。网上有很多关于阅读和写作的信息,但根据ID/注册进行搜索和显示的信息不多 #include <iostream> #include <iomanip> #include <fstream> #include <cstdlib> #include <string> using namespace s

C++ 如何在cocos2dxv3.8中获取触摸位置

此->setTouchEnabled()已弃用 这说明了如何在V3中执行此操作,但现在似乎不推荐使用\u eventDispatcher 现在有人知道在cocos2dx中处理触摸的正确方法吗 编辑: 目前正在使用: auto listener = cocos2d::EventListenerTouchOneByOne::create(); listener->setSwallowTouches(true); listener->onTouchBegan = CC_CALLBACK_2

C++ 使用std::acculate累积到std::ostream中

我试图使用std::acculate在操作符中写入std::ostream不要使用acculate,使用: std::ostream&operator因为您提到了每个也可以使用(提到acculate只是为了迷惑火星人): std::ostream&operator可以这样做: // Using accumulate std::ostream& out_acc(const std::vector<int>& is, std::ostream& out) {

C++ 用于Windows 10开发的DirectShow(Stream.h)

当我在我的机器上编译DSVideoLib时,我刚刚注意到streams.h丢失了。 一个快速的研究给我指出了Windows SDK。 在再次安装windows sdk之后,我仍然无法在我的windows sdk文件夹中找到这些文件和文件夹 有人知道在windows 10上从何处获取DirectShow库吗 Streams.h和其他基类目录文件可以在\Samples\multimedia\directshow\BaseClasses中找到。看起来也是一个很好的快照 See还实际证明,从Window

C++ OpenMP:for循环中可能存在的不同条件

我想使用OpenMP来并行化for循环(我以前也使用std::threads完成过,但那个解决方案相当难看),不过每次迭代时它的条件可能会改变。 下面是我的意思的例子: #pragma omp parallel for for(int i = 0; i < someVector.size(); i++) { . . . if(something) someVector.push_back(v); } #pragma omp parallel for 对于(int i=0;i

新闻组COMP.Lang.c++。慢死了吗?

根据谷歌向新闻组展示的信息,最近一篇文章已经有将近一年的历史了,时间是2016年5月23日 差不多一周前我自己写了一篇文章,到目前为止还没有发表 与此同时,从今天起,新闻组仍在活跃地发布帖子 餐厅现在正式关门了吗?除了jotik在对我提出的相同问题的评论中提出的建议之外,还有其他替代品吗?: 从那里的答案来看,似乎*。由于审核框架失败,审核组通常是关闭的。不是堆栈溢出的问题。我投票关闭这个问题,因为它不是一个关于编程的问题。我认为这个问题可能符合程序员常用的软件工具范围为什么不问问COMP.La

安装Visual studio 2015企业版是否足以与C+一起使用+;11/C++;14? 我想用C++ 11(如果不是C++ 14)工作。我正在安装visual studio 2015企业版。这足够了吗?

基本上是的。C++11的大部分已经在VS2015中实现。C++14的大部分已经在VS2017中实现 完全?没有 微软C++编译器实现中仍然存在各种缺失特征(表达式sFANE)和bug。如果和何时遇到这些限制取决于您编写的代码的样式。您可以在或上进行检查 MSDN的屏幕截图: 请参见。企业每年的成本为数千美元。如果你需要询问陌生人,而不是你的经理,那就不适合你。考虑社区版,也可以使用。这两种编译器都可以在命令行上使用(或与某些工具一起使用)。您甚至可以安装并使用一些对开发人员友好的软件。你的工具推

C++ 如何使用fstream在堆栈中存储文本文件 #包括 #包括 #包括 使用名称空间std; int main() { 堆叠网页; fstream web1; fstreamweb2; fstreamweb3; web1.open(“web1.txt”,fstream::out); web2.open(“web2.txt”,fstream::out); web3.open(“web3.txt”,fstream::out); web1.close(); 网页推送(web1); cout&):正在尝试 引用已删除的函数

因此,我假设我这样做的方式是错误的。是否有一种方法可以将fstream文件存储在堆栈中?我假设您希望将文本存储在堆栈上的文件中,而不是实际的fstream对象中?如果是这样,将文件内容存储为字符串会更容易 #include <iostream> #include <stack> #include <fstream> using namespace std; int main() { stack <fstream> webpages;

C++ 指向新对象后内存泄漏 struct结构{ 结构(参数){…}//StructA onstructor }; 结构{ 结构*pObjectA; int计数器=0; 空函数(){ 如果(计数器 >。

我需要创建一个对象数组,然后在每次调用objectB.function()时,将特定参数传递给StructA的构造函数。上面的代码工作得很好,除了内存泄漏,我无法消除它 我猜StructC析构函数只删除对象数组,而不是每个*新StructA(参数)。我尝试使用指针并稍微删除[],但得到的只是访问内存冲突错误。这是我能想到的唯一可行的方法。感谢所有帮助。正如您正确地假设的那样,内存泄漏是由于没有正确地使用相应的删除清除所有新而导致的。但是在习惯C++中,没有使用新< /COD>和删除< /C> >

C++ 从文件读取/写入时内存和时间问题

我正试图解决一个学校的问题,我做到了,但如果可能的话,它应该运行得更快,占用更少的内存-你能帮我实现吗 问题陈述:从文件中读取自然数N和字符串,并在另一个文件中多次输出相同的字符串N 输入文件的示例: 3. 狗 输出文件的示例: 狗 狗 狗 限制: 1.≤ N≤ 50,并且要读取的行的长度最大为1000000 时限:0.27秒 这是我尝试过的,但运行时间超出了限制: 通常,当遇到此类问题时,您应该分析自己的代码,以查看代码的哪个部分占用了多少时间。这主要可以通过在代码执行前后向计时函数添加一些调

C++ 项目代码正在注册';N';同时正确和错误

我正在为学校做一个项目,我们必须创建一个循环报价系统。我正在尝试获取代码,以提示用户询问是否要进行其他报价 如果用户输入“N”,则代码执行end program语句以及错误的响应语句。任何帮助都将不胜感激,代码在下面,输出在代码下面 if (runQuote = 'N' || 'n') { cout <<"Thank you for using this program. Goodbye. \n"; } else { " "; } if (runQuote != '

C++ (C+;+;)将对象向量传递给构造函数 A类{ 公众: int值; A(整数值){ 这个->值=值; } }; 阶级关系{ 向量项; 关系(向量项){ 此->项目=项目; } } int main(){ 向量项; 项目。推回(A(1)); 关系r1(项目); }

如何将新对象的向量传递给另一个对象的构造函数?在第13行中,我得到一个错误“没有匹配的函数用于调用'A::A()'”我想这是因为类关系中的元素现在是私有的,请尝试在任何声明之前添加public:。并在类声明后使用分号(;),以及在主函数中使用回车符。如下所示: class A { public: int value; A(int value){ this->value = value; } }; class Relation{ vector<

C++ 如何设置和获取fipTag的值

我的尝试: fipTag t; t.setType(FIDT_LONG); t.setKey("FrameTime"); long l = 128; t.setValue(&l); 据推测,这会将标记值设置为128长 然而 const long * lo = static_cast<const long*> ( t.getValue() ); cout << "t.getValue() " << *lo << " ?? doesn't l

C++ AWS SDK CPP和EBS fecthing

根据我的研究,我发现AWS SDK CPP允许bucket 我需要在AWS EBS上具有相同的上载/下载权限 st1类型的卷,但我找不到任何关于它的示例或教程。有什么办法吗?我在非常大的文档中搜索未成功。EBS卷只能通过EC2实例访问。例如,与S3不同,它不是AWS提供的独立服务。这就是我的理解。没有API函数可以访问它。但有没有办法通过HTTP请求访问它?还是ssh?您只能通过附加到卷上的ec2实例访问卷

c+中类实例的大小+; 我试图找到一种正确的方法来测量C++中对象的大小。因为之前我使用的是Java,所以我总是使用它递归地迭代对象的引用,并以KB或MB为单位计算大小。我还发现可以使用sizeof,但是,这不适合我,因为对于一个对象,它总是返回相同的大小,无论其中存储的数据是什么。你能提供一些信息或一个库来衡量对象的大小,以测试性能,或者解释我是否误认为C++中的sieof?p>

编辑: 我试图测量一个类实例的大小。 我正在测量一个包含数组的类的实例。无论数组大小如何,sizeof运算符都会返回24。我试图比较两种方法的两种类型的结构,并用第二种结构来报告大小节省,或者实际上比较哪种方法导致更大的大小。< P>没有一种通用的方法来获得C++中的对象的总内存使用,包括动态分配的内存。(考虑两个对象,它们都有指向同一第三个对象的指针。第三个对象是否应该计数两次?) 如果您希望跟踪应用程序中的内存使用情况,那么您可以覆盖运算符new和/或创建自己的分配器,以便与STL函数一起使

C++ 这个if语句有什么捷径吗?

我正在做作业,却遇到了一个问题。如果我的“如果”有什么捷径,请告诉我 非常感谢你 取决于您对快捷方式的理解:如果您只想写更少的代码,您可以: if(strchr("aoyeuiAOYEUI", ch)) { /* ... */ } 但这只是隐藏了工作,实际上,还有更多的工作要做(检查有问题的字符和终止的空字符) 如果您考虑相反的方向,可以使用查找表: static int const Lookup[256] = { ['a'] = 1, ['o'] = 1, /* ... */ }; // v

如何在C++中优雅地初始化类变量?

现在我想用100个指定值初始化a。除了在a中键入a[I]=XXX,我们还有更优雅的方式吗?使用,例如: 这些特定值以什么形式存在?它们是可以加载的文件的一部分吗?它们需要硬编码吗?这些特定值有什么模式吗?对于硬编码的常量值,可以使用带括号的init list或构造函数的类内初始化。C++不包含反射。在初始化器列表中使用硬编码数组元素没有什么错。避免使用原始数组,而是使用诸如std::vector或std::array之类的容器。我明白了。听起来硬代码是唯一的选择。我问这个问题的原因是,当变量不在

  1    2   3   4   5   6  ... 下一页 最后一页 共 8521 页