gpt4 book ai didi

C++如何将argv作为字符串保存到 vector

转载 作者:塔克拉玛干 更新时间:2023-11-03 01:22:22 25 4
gpt4 key购买 nike

我试图将 argv 作为字符串保存到 vector 中,但我不断收到错误:see reference to function template instantiation 'std::vector<_Ty>::vector<_TCHAR*[]>(_Iter,_Iter)' being compiled

我试过了Save argv to vector or string而且它不起作用

我正在使用 Microsoft Visual Studio 2010。

这是我的代码:

#include "stdafx.h"
#include <string>
#include <vector>
#include <iostream>

int _tmain(int argc, _TCHAR* argv[])
{
std::vector<std::string> allArgs(argv + 1, argv + argc);
return 0;
}

最佳答案

问题是 std::string 没有 _TCHAR* 类型的构造函数,因此您无法从数组生成字符串 vector _TCHAR*

按照@NathanOliver 的说法,尝试使用 main 的“正常”版本:int main(int argc, char *argv[])

或者切换到std::wstring

注意:如果不启用 unicode 进行编译,_TCHAR* 可能等同于 char *,并且代码不会引发任何编译器错误。

关于C++如何将argv作为字符串保存到 vector ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37710597/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com