Program options default has unreasonable precision
Chưa có ai nhận issue này.
Đánh giá
- Độ khó
- 3/5
- Thời gian dự kiến
- 1-2 ngày
- Mức phù hợp với người mới
- 45/100
Hướng nghiên cứu
Bắt đầu bằng cách tái hiện định dạng với cấu hình Boost.Program_options được hiển thị và kiểm tra cách default_value định dạng một double cho phần mô tả tùy chọn được hiển thị. So sánh hành vi này với ldecimal.cpp trong dự án bezitopo được liên kết, đồng thời giữ nguyên dạng 0.1 được yêu cầu thay vì .1. Được coi là hoàn tất khi giá trị mặc định được hiển thị dưới dạng (=0.1) mà không làm ảnh hưởng đến đầu ra của các tùy chọn khác.
Do mô hình lập chỉ mục viết ra từ nội dung của issue.
Mô tả
Source code:
time_t now,then;
double tolerance,stageTolerance,areadone,rmsadj;
bool done=false;
string inputFile,outputFile;
bool validArgs,validCmd=true;
po::options_description generic("Options");
po::options_description hidden("Hidden options");
po::options_description cmdline_options;
po::positional_options_description p;
po::variables_map vm;
generic.add_options()
("tolerance,t",po::value<double>(&tolerance)->default_value(0.1),"Vertical tolerance")
("output,o",po::value<string>(&outputFile),"Output file");
hidden.add_options()
("input",po::value<string>(&inputFile),"Input file");
p.add("input",1);
cmdline_options.add(generic).add(hidden);
//...
cout<<generic;
Output:
-t [ --tolerance ] arg (=0.10000000000000001)
Vertical tolerance
-o [ --output ] arg Output file
Output should be:
-t [ --tolerance ] arg (=0.1) Vertical tolerance
-o [ --output ] arg Output file
I've tried this on Boost 1.65.1 on Ubuntu Beaver, and Boost 1.69.0 on DragonFly BSD 5.5, and got the same result.
For an idea on how to fix it, see ldecimal.cpp in https://github.com/phma/bezitopo, but that would output ".1", not "0.1".
- Ngôn ngữ chính
- C++
- Star
- 136
- Fork
- 117
- Chỉ số merge pull request
- Không có pull request nào được merge trong 30 ngày
Hướng dẫn đóng góp
Chưa lập chỉ mục được hướng dẫn đóng góp cho kho mã nguồn này
Bắt đầu từ đâu
- Đọc hết issue, rồi đọc hướng dẫn đóng góp của dự án.
- Bình luận trên issue rằng bạn sẽ nhận — tránh hai người làm cùng một việc.
- Fork repository và làm thay đổi trên một nhánh.
- Mở pull request có tham chiếu số hiệu của issue.
Issue khác của boostorg/program_options
-
Provide C++20 module Đang mở
Độ khó 5/5 Hơn một tuần Mức phù hợp với người mới 45/100
boostorg/program_options#160 · 2 bình luận ·
-
Độ khó 5/5 Hơn một tuần Mức phù hợp với người mới 25/100
boostorg/program_options#159 · 3 bình luận ·
-
Độ khó 3/5 1-2 ngày Mức phù hợp với người mới 45/100
boostorg/program_options#147 ·
-
Độ khó 5/5 Hơn một tuần Mức phù hợp với người mới 30/100
boostorg/program_options#146 ·
-
non static member shadows Đang mở
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 45/100
boostorg/program_options#144 ·
Tất cả issue của boostorg/program_options
Issue tương tự
-
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 75/100
-
good first issue
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 75/100
ros2/message_filters#338 ·
-
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 70/100
subsurface/subsurface#4984 ·
-
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 75/100
flutter-webrtc/flutter-webrtc#2206 ·
-
litertlm-android AAR ships no consumer ProGuard rules → "mid == null" SIGABRT in minified apps Đang mở
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 70/100
google-ai-edge/LiteRT-LM#3739 ·