无法将代码整数值硬代码为向量
Unable to hard code integer value into vector
我正在尝试使用C 进行对矢量的自学。
据我所知,与数组相比,向量更具动态性和有效性。为了进行练习,我尝试将不同数据类型的值存储到向量中并从向量打印这些值。
因此,我开始尝试将一些值对向量的不同数据类进行编码,例如整数,字符串和double。
。因此,经过一些研究,我试图将一些整数和双重价值硬编码到矢量中。
。std::vector<int> stockID = {023};
std::vector<double> stockPrice;
stockPrice.push_back("50.50");
std::vector<int> stockChange = {100};
std::vector<int> transactionDate = {151212};
但是,它返回了我一个称为 conversion of int/double to non-scarlar type
的错误。
但是,当我试图将代码重视为矢量字符串时,似乎没有任何问题。
std::vector<string> stockItem;
stockItem.push_back("Samsung Phone");
std::vector<string> category;
category.push_back("Electronic");
std::vector<string> subCategory;
subCategory.push_back("Mobile Phone");
我可以询问字符串向量与int和double vector的工作方式有所不同以产生此类错误。
在问题的评论部分中指出。
没有这种隐式转换
""
中引用的任何内容都是C 中的字符串静态。您的stockPrice
仅存储double
,并且从字符串字符处到double
如果您想进入矢量stockPrice
。应该像
stockPrice.push_back(50.50);
而不是
stockPrice.push_back("50.50");
您可能想调用vector
的构造函数,因此请删除一些=
符号:
std::vector<int> stockID{023};
btw, 023
是19。
当然,pusk_back
是一个成员函数,因此您只能在某些功能主体内调用(如A 语句),您需要传递适当的类型。显然,"50.50"
是字符串文字,而不是浮点字面的字面。所以这应该有效:
void f() {
std::vector<double> stockPrice;
stockPrice.push_back(50.50);
}
假设它出现在顶级(不在另一个功能的体内)。
不要忘记启用所有警告&amp;编译时的调试信息,例如如果使用GCC,则使用g++ -Wall -g
编译。确保至少学习C 11(不是标准的一些较旧版本)。也许通过-std=c++11
如果您有 g++
的一些旧版本。我建议(2017年2月)至少使用一些GCC 6。
我正在尝试使用C 对向量进行自学。
不要研究向量,但整个C (C 11或C 14)编程语言(这是一种困难而复杂的编程语言)。因此,请阅读最近的版本编程 - 使用C 的原理和实践,另请参阅一些C 参考网站。
还查看现有免费软件的源代码(例如,在github上)(在github上)(请确保它是近期且真正的C 11或更高)。
顺便说一句,这应该有效
std::vector<std::string> category{"Electronic","Furniture"};
- 我不明白这段代码是如何对这个pythonlist()进行排序的,也不明白如何用C++中的向量来重现它
- 代码使用向量成功运行,但使用数组显示错误
- 向量加法代码 OpenCL 返回 clCreateKernel 错误 -46
- 为什么向量不在代码块中运行?
- 使用指针向量(带代码)C++(以及对其使用的便利性的怀疑)时出现问题
- 代码超出范围.如何动态分配此向量?
- 为什么此代码无法将字符push_back到向量中<char>?
- 我可以在一行代码中将向量中与条件匹配的所有元素插入到集合中吗?
- 代码将向量存储为向量<vector>,为什么没有错误消息?
- 如何在<typename> <long> 不更改给定代码的情况下将自定义向量与 STL 向量相互转换?
- 在将其尺寸较大的向量移动到容量较小的向量之前,是否可以通过使用Reserve()来提高代码性能
- 为什么下面的代码返回向量大小为 10
- 为什么我的代码没有将每个对象添加到向量中
- 无法将代码整数值硬代码为向量
- 使用向量(STL)时,未定义的行为,请说明理性背后的以下代码输出
- 返回向量<对<字符串,字符串>>会导致 gcc 编译代码 (curlcpp) 崩溃
- 元素向量乘法 C++(代码不起作用)
- 如何编写自己的代码来替换`sTD :: min_element`以在向量中找到最小的值
- 使用 Agner 的向量类库编译多架构代码
- OpenCV查找轮廓的示例代码:向量释放问题