c++ - 使用 GCC 4.8 构建错误:数组用作初始化程序
问题描述
在 SUSE 上使用 gcc 4.8 我收到以下错误:
有谁知道这个错误的根源是什么,以及如何解决它?
我回来了更多细节:
有以下课程
smoquery.h
class SmoQuery
{
public:
SmoQuery(SqlLogonElem * const & eLogon,
optionsInfo_t * const & optionsInfoP,
logicalNameList_t * const & pRequestedDbList,
logicalNameList_t * const & pExcludeDbList,
SqlDatabaseElem * const & peDatabase,
dsBool_t const bIncludeFrontEndCapacity,
dsBool_t const bReplacementChars);
~SmoQuery();
private:
Options mOptions;
char optionsFilePath[PATH_MAX+1] = "";
};
smoquery.cpp
SmoQuery::SmoQuery(SqlLogonElem * const & eLogon,
optionsInfo_t * const & optionsInfoP,
logicalNameList_t * const & pRequestedDbList,
logicalNameList_t * const & pExcludeDbList,
SqlDatabaseElem * const & peDatabase,
dsBool_t const bIncludeFrontEndCapacity,
/*line 80 --->*/ dsBool_t const bReplacementChars)
{
/* all code was commented */
}
构建日志说:
Gmake build ...(包含在此评论中已删除)
g++ -D_LINUX -D_LINUX64 -DLINUX64 -D_LINUXAMD64 -DMBCS_AIX -D_THREADS -D_CPP_ALL -DNO_CDE -D_LONG_LONG -D_LARGEFILE64_SOURCE -DWIDE_CHAR_FIX -DDSMAPILIB -DDSM_STANDALONE_PROGRAM -DUNIX -D_FILE_OFFSET_BITS=64 -D_NEED_USING_NAMESPACE -D_GNU_SOURCE -DSQL -O -I. -I.. .... -fpermissive -fpic -fstack-protector -Wall -Wno-write-strings -Wno-missing-braces -DBUILD_TSM_V816 -std=c++11 -c smoquery.cpp -o ../../sqlonlinux/optimized/obj816/linuxAMD64/smoquery.o
...
smoquery.cpp: In constructor ‘SmoQuery::SmoQuery(SqlLogonElem* const&, optionsInfo_t* const&, logicalNameList_t* const&, logicalNameList_t* const&, SqlDatabaseElem* const&, dsBool_t, dsBool_t)’:
smoquery.cpp:132:72: error: array used as initializer
dsBool_t const bReplacementChars)
^
In file included from smoquery.cpp:80:0:
解决方案
麻烦的是这个成员的初始化
字符选项文件路径[PATH_MAX+1] = "";
gcc 4.8(我使用的)对麻烦线(那个插入符号 ^ 符号)具有误导性。
任何人都可以提交错误吗?
推荐阅读
- vb.net - 如何使打开的图形链接与 301 重定向一起使用
- c++ - 无法在 Qt (C++) 中调用 PaintEvent
- testing - 赛普拉斯:如何在测试的所有测试开始之前运行一次代码
- angular - 如何在 REST-API 端点使用 Observables 进行分页?
- batch-file - 如何根据cmd中的另一个变量从字符串变量中回显单个数字
- json - 用于展平对象数组的 JMESPath 表达式,每个对象都有嵌套的对象数组
- python - 概率 SVM,它实际上是如何工作的?
- javascript - 如何让这个图像在正确的位置
- dart - Flutter - 如何从资产中读取 500MB 的文本文件(无 JSON)
- javascript - 不使用 JS 跳出隐藏溢出