小编Chi*_*rni的帖子

动态地推断函数的返回类型

我定义了一些函数,它们返回类型为void,int,float,float*等(某些类也是如此).

我的cmd是一个从用户输入的字符串向量.其中第0个位置是函数名称(read_lib,square,open_file),第一个位置是参数(/ path/to/file,number_to_square)等.

auto find_and_execute(vector<string> cmd){
//for(auto x: cmd){cout << x << endl;}
if(cmd.at(0) == "square") {return square(stoi(cmd.at(1)));} // unsigned_int
if(cmd.at(0) == "cube") {return cube(stoi(cmd.at(1)));}     // unsigned_int
if(cmd.at(0) == "open_file") {open_file(cmd.at(1));}        //void
if(cmd.at(0) == "read_lib") {read_lib(cmd.at(1));}          //void
if(cmd.at(0) == "read_verilog") {read_verilog(cmd.at(1));}  //void
if(cmd.at(0) == "set_top") {set_top(cmd.at(1));}            //void
if(cmd.at(0) == "get_pin") {return get_pin(cmd.at(1));}     // Pin Class object takes in cell argument
}
Run Code Online (Sandbox Code Playgroud)

错误:'auto'扣除不一致:'unsigned int'然后'Pin'

编辑:我有另一个问题.我的所有函数都没有将字符串输入作为参数.我可以将字符串转换为整数但是如何将其转换为某些类对象,如Pin/Cell

c++ c++11 c++14

3
推荐指数
1
解决办法
149
查看次数

标签 统计

c++ ×1

c++11 ×1

c++14 ×1