⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 progvaltest.cpp

📁 希望我提供的代码对大家有帮助
💻 CPP
字号:
//: C20:ProgValTest.cpp

// From Thinking in C++, 2nd Edition

// Available at http://www.BruceEckel.com

// (c) Bruce Eckel 1999

// Copyright notice in Copyright.txt

//{L} ProgVals

#include "ProgVals.h"

using namespace std;



string defaults[][2] = {

  { "color", "red" },

  { "size", "medium" },

  { "shape", "rectangular" },

  { "action", "hopping"},

};



const char* usage = "usage:\n"

"ProgValTest [flag1=val1 flag2=val2 ...]\n"

"(Note no space around '=')\n"

"Where the flags can be any of: \n"

"color, size, shape, action \n";



// So it can be used globally:

ProgVals pvals(defaults, 

  sizeof defaults / sizeof *defaults);



class Animal {

  string color, size, shape, action;

public:

  Animal(string col, string sz, 

    string shp, string act) 

    :color(col),size(sz),shape(shp),action(act){}

  // Default constructor uses program default

  // values, possibly change on command line:

  Animal() : color(pvals["color"]), 

    size(pvals["size"]), shape(pvals["shape"]),

    action(pvals["action"]) {}

  void print() {

    cout << "color = " << color << endl

      << "size = " << size << endl

      << "shape = " << shape << endl

      << "action = " << action << endl;

  }

  // And of course pvals can be used anywhere

  // else you'd like.

};



int main(int argc, char* argv[]) {

  // Initialize and parse command line values

  // before any code that uses pvals is called:

  pvals.parse(argc, argv, usage);

  pvals.print();

  Animal a;

  cout << "Animal a values:" << endl;

  a.print();

} ///:~

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -