[clang-tidy] updated misc-sizeof-container docs.
llvm-svn: 247580
This commit is contained in:
		
							parent
							
								
									e0f603fad5
								
							
						
					
					
						commit
						64aa388efa
					
				| 
						 | 
					@ -4,7 +4,9 @@ misc-sizeof-container
 | 
				
			||||||
The check finds usages of ``sizeof`` on expressions of STL container types. Most
 | 
					The check finds usages of ``sizeof`` on expressions of STL container types. Most
 | 
				
			||||||
likely the user wanted to use ``.size()`` instead.
 | 
					likely the user wanted to use ``.size()`` instead.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
Currently only ``std::string`` and ``std::vector<T>`` are supported.
 | 
					All class/struct types declared in namespace ``std::`` having a const ``size()``
 | 
				
			||||||
 | 
					method are considered containers, with the exception of ``std::bitset`` and
 | 
				
			||||||
 | 
					``std::array``.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
Examples:
 | 
					Examples:
 | 
				
			||||||
 | 
					
 | 
				
			||||||
| 
						 | 
					@ -12,9 +14,12 @@ Examples:
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  std::string s;
 | 
					  std::string s;
 | 
				
			||||||
  int a = 47 + sizeof(s); // warning: sizeof() doesn't return the size of the container. Did you mean .size()?
 | 
					  int a = 47 + sizeof(s); // warning: sizeof() doesn't return the size of the container. Did you mean .size()?
 | 
				
			||||||
                          // The suggested fix is: int a = 47 + s.size();
 | 
					 | 
				
			||||||
 | 
					
 | 
				
			||||||
  int b = sizeof(std::string); // no warning, probably intended.
 | 
					  int b = sizeof(std::string); // no warning, probably intended.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  std::string array_of_strings[10];
 | 
					  std::string array_of_strings[10];
 | 
				
			||||||
  int c = sizeof(array_of_strings) / sizeof(array_of_strings[0]); // no warning, definitely intended.
 | 
					  int c = sizeof(array_of_strings) / sizeof(array_of_strings[0]); // no warning, definitely intended.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  std::array<int, 3> std_array;
 | 
				
			||||||
 | 
					  int d = sizeof(std_array); // no warning, probably intended.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
		Loading…
	
		Reference in New Issue