1-记录日志并打印
LOG(INFO) << "log what you want ";
LOG(ERROR) << "log error and break";
LOG(WARNING) << "log the warning message";
2-CHECK系统
CHECK(!FLAGS_configuration_directory.empty())
<< "-configuration_directory is missing.";
//如果为false则打印后面的提示
F0104 11:49:55.899276 13058 node_main.cc:156] Check failed: !FLAGS_configuration_slam_basename.empty() -FLAGS_configuration_slam_basename is missing.
使用示范,如果初始化glog,具体未深究
int main(int argc, char** argv) {
google::InitGoogleLogging(argv[0]);
google::ParseCommandLineFlags(&argc, &argv, true);
CHECK(!FLAGS_configuration_directory.empty())
<< "-configuration_directory is missing.";
CHECK(!FLAGS_configuration_slam_basename.empty())
<< "-FLAGS_configuration_slam_basename is missing.";
CHECK(!FLAGS_configuration_localization_basename.empty())
<< "-FLAGS_configuration_localization_basename is missing.";
::ros::init(argc, argv, "cartographer_node");
::ros::start();
cartographer_ros::ScopedRosLogSink ros_log_sink;
cartographer_ros::Run();
::ros::shutdown();
}