Index: trunk/Mars/mcore/ofits.h
===================================================================
--- trunk/Mars/mcore/ofits.h	(revision 16426)
+++ trunk/Mars/mcore/ofits.h	(revision 16427)
@@ -63,5 +63,5 @@
         {
             key = Trim(key);
-            if (key.size()==0)
+            if (key.empty())
             {
 #ifdef __EXCEPTIONS
@@ -195,8 +195,8 @@
 
             sout << "= ";
-            sout << (value[0]=='\''?std::left:std::right);
+            sout << (!value.empty() && value[0]=='\''?std::left:std::right);
             sout << setw(20) << value << std::left;
 
-            if (comment.size()>0)
+            if (!comment.empty())
                 sout << " / " << comment;
 
@@ -428,7 +428,7 @@
     bool SetStr(const string &key, string s, const string &comment="")
     {
-        for (string::iterator c=s.begin(); c<s.end(); c++)
-            if (*c=='\'')
-                s.insert(c++, '\'');
+        for (uint i=0; i<s.length(); i++)
+            if (s[i]=='\'')
+                s.insert(i++, "\'");
 
         return Set(key, true, "'"+s+"'", comment);
@@ -492,5 +492,5 @@
         Set("END");
         while (fKeys.size()%36!=0)
-            fKeys.push_back(Key());
+            fKeys.emplace_back();
     }
 
@@ -596,4 +596,5 @@
 
         Table::Column col;
+
         col.name   = name;
         col.type   = typechar;
