【发布时间】:2020-09-19 23:15:30
【问题描述】:
所以我有一个看起来像这样的程序:
const char *Argv[] = {"stuff", "stuff1", "stuff3"};
bool pass = xxxxx::yyyyy(Argv.begin(), Argv.end(), Tri);
我认为这是非法的,因为const char * 不是用户定义的类型。但是,我不确定如何解决这个问题。我需要更改第一行还是第二行?还是两者兼有?
【问题讨论】:
-
顺便说一句,这实际上是非法的,因为
(const char*)[3]不是用户定义的(类)类型。让你绊倒的是排列整齐。元素类型无关紧要。 -
只需使用指针:
Argv和Argv + 3——迭代器只是 C++ 中指针的泛化。
标签: c++ arrays iterator namespaces const-char